Spring Data Redis入門示例:基於RedisTemplate (三)
阿新 • • 發佈:2018-01-28
gem per 例子 基於 接口 image 安全 redist 工作 模板類中獲取對應操作類的引用,這一步是重復的,可以通過
使用底層API:RedisConnection
操作Redis,需要對數據進行手動轉換(String <---->byte
),需要進行多數重復性工作,效率低下;org.springframework.data.redis.core.RedisTemplate
類提供了與Redis交互的高級抽象,該類負責序列化和連接管理,對大多數重復性工作進行了封裝。並且 RedisTemplate
是一個線程安全的類。
此外,模板還提供了用於處理特定類型或特定鍵的操作視圖。包含的接口見下表:
例子:上一節第三步的配置文件添加下面內容:
<bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate"> <property name="connectionFactory" ref="jedisConnectionFactory"/> </bean>
測試RedisTemplate:
// RedisTemplate 操作
RedisTemplate redisTemplate = context.getBean(RedisTemplate.class);
// 獲取String類型的操作類
ValueOperations<String, String> valueOperations = redisTemplate.opsForValue();
valueOperations.set("haha", "你好");
System.out.println(valueOperations.get("haha"));
優化:
上面的例子,當需要操作某種類型時,就從RedisTemplate
Spring DI
進行註入,可以省下一行代碼,代碼如下
@Autowired
private RedisTemplate template;
@Resource(name = "redisTemplate")
private ValueOperations valueOps;
示例說明
1. RedisTemplate是一個泛型類,可以指定key和value的類型 2. 想操作Redis的哪種類型數據,從RedisTemplate 獲取對應操作的引用,如上面的valueOperations 3. 使用RedisTemplate,沒有了底層API將數據轉byte的操作
Spring Data Redis入門示例:基於RedisTemplate (三)