SpringBoot怎么加入Guava Cache实现本地缓存
作者:水悠悠予安
时间:2023-05-10
浏览:0
在pom.xml中加入guava依赖com.google.guavaguava18.0创建一个CacheService,方便调用publicinterfaceCacheService{//存voidsetCommonCache(Stringkey,Objectvalue);//取ObjectgetCommonCache(Stringkey);}其实现类importcom.google.common.cache.Cache;importcom.google.common.cache.CacheBuilder
在pom.xml中加入guava依赖
com.google.guava guava 18.0
创建一个CacheService,方便调用
public interface CacheService {
//存
void setCommonCache(String key,Object value);
//取
Object getCommonCache(String key);
}其实现类
import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
import com.wu.service.CacheService;
import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct;
import java.util.concurrent.TimeUnit;
@Service
public class CacheServiceImpl implements CacheService {
private Cache commonCache=null;
@PostConstruct//代理此bean时会首先执行该初始化方法
public void init(){
commonCache= CacheBuilder.newBuilder()
//设置缓存容器的初始化容量为10(可以存10个键值对)
.initialCapacity(10)
//最大缓存容量是100,超过100后会安装LRU策略-最近最少使用,具体百度-移除缓存项
.maximumSize(100)
//设置写入缓存后1分钟后过期
.expireAfterWrite(60, TimeUnit.SECONDS).build();
}
@Override
public void setCommonCache(String key, Object value) {
commonCache.put(key,value);
}
@Override
public Object getCommonCache(String key) {
return commonCache.getIfPresent(key);
}
}
作者最新文章
photoshop通道和蒙版在哪
2026-10-03 12:15
苹果折叠屏iPhone预计售价是多少
2026-09-14 13:44
OpenAI GPT-6 Astra 自主通关《传送门》:技术原理与实验成本解析
2026-09-08 19:08
苹果与铠侠签署NAND长期供应协议:3-5年长约与不设价格上限背后的供应链战略
2026-09-08 16:58
PDF转PPT操作指南:在线、本地与批量转换及结果核对
2026-09-04 15:04
上一篇:
SpringBoot异常处理的原理分析
下一篇:
SpringBoot自动配置的原理分析
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多










































