呃.................................
....................废话不多说,直接干代码
1、先添加pom依赖
org.springframework.boot
spring-boot-starter-cache
com.github.ben-manes.caffeine
caffeine
spring-boot版本是:2.4.2
2、启动类添加开启缓存注解
@EnableCaching
3、添加缓存配置文件
@Configuration
public class CacheConfig {
@Value("${cache.time}")
private String cacheTime;
@Bean("caffeineCacheManager")
public CacheManager cacheManager() {
CaffeineCacheManager caffeineCacheManager = new CaffeineCacheManager();
caffeineCacheManager.setCaffeine(getCaffeine());
caffeineCacheManager.setCacheLoader(cacheLoader());
//是否允许值为空
caffeineCacheManager.setAllowNullValues(false);
return caffeineCacheManager;
}
@Bean
public CacheLoader
我这里时间是用的读取的外部配置文件,方便修改。
缓存更新策略:
expireAfterAccess(long, TimeUnit):在最后一次访问或者写入后开始计时,在指定的时间后过期。假如一直有请求访问该key,那么这个缓存将一直不会过期。
expireAfterWrite(long, TimeUnit)::在最后一次写入缓存后开始计时,在指定的时间后过期。
expireAfter(Expiry)::自定义策略,过期时间由Expiry实现独自计算。
4、使用
在需要的方法上面添加注解:@Cacheable、@CacheEvict、@CachePut
@Cacheable(cacheNames = "userInfo", key = "#param.uid+'_'+#param.uname")
public List getUserInfo(UserParam param) {
// 查询数据信息
}
5、完
本文内容简单,后面有时间再丰富。