Spring Data Redis 2.0
参考文档:Spring Data Redis 2.1.0 Document
原因
SpringBoot:2.0.4
因为业务需要使用Spring Cache作为缓存。而我在百度找到的结果都是2.0之前的,Spring Data Redis的CacheManager的实现RedisCacheManager发生了很大变动,配置无法向下兼容,以下是2.0之前的配置。
@Bean
public RedisCacheManager cacheManager(RedisTemplate redisTemplate) {
RedisCacheManager cacheManager = new CustomizeRedis(redisTemplate);
cacheManager.setUsePrefix(false);
cacheManager.setDefaultExpiration(60);
return cacheManager;
}
修改
-
我在Spring Data Redis 2.1.0 Document文档中无意发现发生了改变。
-
SpringBoot 2.0.4使用的Spring Data Redis version
修改后
@Bean
public CacheManager cacheManager(@Autowired RedisConnectionFactory connectionFactory) {
return RedisCacheManager
.builder(connectionFactory)
.cacheDefaults(RedisCacheConfiguration.defaultCacheConfig().entryTtl(Duration.ofMinutes(5)))
.transactionAware()
.build();
}
过期时间就生效了