下文教大家如何快速搭建 spring + redis 实现接口数据缓存功能
pom依赖
<dependencies>
<!-- redis起步依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- 缓存起步依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-cache</artifactId>
</dependency>
</dependencies>
yaml同上篇,无变化
配置类
@AllArgsConstructor
@EnableCaching
@SpringBootConfiguration
public class RedisCacheConfig implements CachingConfigurer {
private final RedisConnectionFactory redisConnectionFactory;
// 缓存管理器
@Override
public CacheManager cacheManager() {
return RedisCacheManager.create(redisConnectionFactory);
}
// 缓存解析器
@Override
public CacheResolver cacheResolver() {
return new SimpleCacheResolver(cacheManager());
}
// 缓存默认key生成规则
@Override
public KeyGenerator keyGenerator() {
// 笔者这里默认 使用缓存的是只带一个参数的查询,就拼了一个参数 大家参考就行,自己在这定制
return (target, method, params) -> String.format("%s.%s.%s", target.getClass().getName(), method.getName(), params[0]);
}
// 缓存时异常处理
@Override
public CacheErrorHandler errorHandler() {
return new SimpleCacheErrorHandler();
}
}
如上配置即可在Controller 层使用诸如 @Cacheable 等注解进行接口数据缓存,注解使用方法这里就不展开细说了,更多细节请参考其他博文,给个友链
https://blog.csdn.net/qq_38974634/article/details/80650810