参考(一)
@Configuration
public class RedisCacheConfig {
@Value("${liu.globalSessionTimeout}")
private long globalSessionTimeout;
@Autowired
ResourceLoader resourceLoader;
@Bean
public CacheManager cacheManager(RedisConnectionFactory redisConnectionFactory) {
return RedisCacheManager.builder(redisConnectionFactory)
//默认的缓存配置(没有配置键的key均使用此配置)
.cacheDefaults(getDefaultCacheConfiguration())
.withInitialCacheConfigurations(getCacheConfigurations())
//在spring事务正常提交时才缓存数据
.transactionAware()
.build();
}
private Map<String, RedisCacheConfiguration> getCacheConfigurations() {
Map<String, RedisCacheConfiguration> configurationMap = new HashMap<>();
//缓存键,且3600*10秒后过期,3600*10秒后再次调用方法时需要重新缓存
configurationMap.put("AllMenuList",