springboot redis配置类
时间: 2023-10-12 22:11:21 浏览: 134
springboot与redis整合
以下是一个简单的Spring Boot Redis配置类示例:
```java
@Configuration
@EnableCaching
public class RedisConfig {
@Bean
public RedisConnectionFactory redisConnectionFactory() {
return new LettuceConnectionFactory();
}
@Bean
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(redisConnectionFactory);
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer());
return redisTemplate;
}
@Bean
public CacheManager cacheManager(RedisConnectionFactory redisConnectionFactory) {
RedisCacheManager cacheManager = RedisCacheManager.builder(redisConnectionFactory)
.cacheDefaults(RedisCacheConfiguration.defaultCacheConfig().entryTtl(Duration.ofMinutes(10)))
.build();
return cacheManager;
}
}
```
上述代码中,`@Configuration`注解表示这是一个配置类,`@EnableCaching`注解表示开启缓存功能。
`redisConnectionFactory()`方法返回一个Redis连接工厂实例,这里使用的是Lettuce作为连接工厂。
`redisTemplate()`方法返回一个RedisTemplate实例,用于将Java对象序列化为Redis中的键值对,同时设置了键和值的序列化方式。
`cacheManager()`方法返回一个RedisCacheManager实例,用于管理缓存,包括缓存的配置和过期时间等。这里设置了缓存过期时间为10分钟。
阅读全文