声明式缓存
编程式缓存使用复杂,代码侵入性高,所以这篇博客不采用编程式缓存实现Redis缓存数据,推荐使用声明式缓存,通过注解来实现热点数据缓存。
1)导入Redis依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
2)添加配置文件
spring.redis.host=localhost
spring.redis.port=6379
spring.redis.database=0
spring.redis.jedis.pool.max-active=100
spring.redis.jedis.pool.max-wait=100ms
spring.redis.jedis.pool.max-idle=100
spring.redis.jedis.pool.min-idle=10
3)在启动类上添加注解
//启动缓存
@EnableCaching
4)Redis的配置类
@Configuration
public class RedisConfig {
@Bean
public RedisCacheConfiguration provideRedisCacheConfiguration(){
//加载默认配置
RedisCacheConfiguration conf = RedisCacheConfiguration.defaultCacheConfig();
//返回Jackson序列化器
return conf.serializeValuesWith(
RedisSerializationContext.SerializationPair
.fromSerializer(new GenericJackson2JsonRedisSerializer()));
}
}
5)缓存相关注解
-
@CacheConfig 使用在Service类上,可以配置缓存名称,如: @CacheConfig(cacheN