最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

spring boot中內嵌redis的使用方法示例

 更新時間:2018年06月12日 10:18:19   作者:張占嶺  
這篇文章主要給大家介紹了關于spring boot中內嵌redis使用的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

redis介紹

Redis是目前業(yè)界使用最廣泛的內存數據存儲。相比memcached,Redis支持更豐富的數據結構,例如hashes, lists, sets等,同時支持數據持久化。除此之外,Redis還提供一些類數據庫的特性,比如事務,HA,主從庫??梢哉fRedis兼具了緩存系統(tǒng)和數據庫的一些特性,因此有著豐富的應用場景。

引言

對于單元測試來說,我們應該讓它盡量保持單一環(huán)境,不要與網絡資源相通訊,這樣可以保證測試的穩(wěn)定性與客觀性,對于springboot這個框架來說,它集成了單元測試JUNIT,同時在設計項目時,你可以使用多種內嵌的存儲工具,像mongodb,redis,mysql等等,今天主要說一下embedded-redis的使用。

使用方法如下:

添加包引用build.gradle

 testCompile(
   'com.github.kstyrc:embedded-redis:0.6'
 )

添加配置注入

import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.data.redis.connection.RedisConnectionFactory;import org.springframework.data.redis.core.HashOperations;import org.springframework.data.redis.core.ListOperations;import org.springframework.data.redis.core.RedisTemplate;import org.springframework.data.redis.core.SetOperations;import org.springframework.data.redis.core.ValueOperations;import org.springframework.data.redis.core.ZSetOperations;import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer;import org.springframework.data.redis.serializer.StringRedisSerializer;
@Configuration
public class RedisConfig {
 /**
 * 注入 RedisConnectionFactory
 */
 @Autowired
 RedisConnectionFactory redisConnectionFactory;

 /**
 * 實例化 RedisTemplate 對象
 *
 * @return
 */
 @Bean
 public RedisTemplate<String, Object> functionDomainRedisTemplate() {
 RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
 initDomainRedisTemplate(redisTemplate, redisConnectionFactory);
 return redisTemplate;
 }

 /**
 * 設置數據存入 redis 的序列化方式
 *
 * @param redisTemplate
 * @param factory
 */
 private void initDomainRedisTemplate(RedisTemplate<String, Object> redisTemplate, RedisConnectionFactory factory) {
 redisTemplate.setKeySerializer(new StringRedisSerializer());
 redisTemplate.setHashKeySerializer(new StringRedisSerializer());
 redisTemplate.setHashValueSerializer(new JdkSerializationRedisSerializer());
 redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer());
 redisTemplate.setConnectionFactory(factory);
 }

 /**
 * 實例化 HashOperations 對象,可以使用 Hash 類型操作
 *
 * @param redisTemplate
 * @return
 */
 @Bean
 public HashOperations<String, String, Object> hashOperations(RedisTemplate<String, Object> redisTemplate) {
 return redisTemplate.opsForHash();
 }

 /**
 * 實例化 ValueOperations 對象,可以使用 String 操作
 *
 * @param redisTemplate
 * @return
 */
 @Bean
 public ValueOperations<String, Object> valueOperations(RedisTemplate<String, Object> redisTemplate) {
 return redisTemplate.opsForValue();
 }

 /**
 * 實例化 ListOperations 對象,可以使用 List 操作
 *
 * @param redisTemplate
 * @return
 */
 @Bean
 public ListOperations<String, Object> listOperations(RedisTemplate<String, Object> redisTemplate) {
 return redisTemplate.opsForList();
 }

 /**
 * 實例化 SetOperations 對象,可以使用 Set 操作
 *
 * @param redisTemplate
 * @return
 */
 @Bean
 public SetOperations<String, Object> setOperations(RedisTemplate<String, Object> redisTemplate) {
 return redisTemplate.opsForSet();
 }

 /**
 * 實例化 ZSetOperations 對象,可以使用 ZSet 操作
 *
 * @param redisTemplate
 * @return
 */
 @Bean
 public ZSetOperations<String, Object> zSetOperations(RedisTemplate<String, Object> redisTemplate) {
 return redisTemplate.opsForZSet();
 }
}

在業(yè)務層中使用redis

 @Autowired
 RedisTemplate<String, Object> redisCacheTemplate;

在使用過程中,我們的RedisTemplate對象已經被Autowired注入了。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關文章

最新評論

云梦县| 晋城| 临安市| 五常市| 邳州市| 资阳市| 马关县| 抚宁县| 武宁县| 邵阳市| 烟台市| 钟祥市| 夹江县| 贡觉县| 高尔夫| 三河市| 平顺县| 炎陵县| 滁州市| 阿城市| 吉隆县| 京山县| 德清县| 延庆县| 个旧市| 依兰县| 洪雅县| 内丘县| 中宁县| 枝江市| 张北县| 霞浦县| 武安市| 泰和县| 江华| 溆浦县| 沈阳市| 斗六市| 井冈山市| 额尔古纳市| 潢川县|