SpringBoot入门到精通-基于Google Guava Cache Util工具类实现本地缓存设置过期时间

举报
隔壁老汪 发表于 2022/06/25 22:05:13 2022/06/25
【摘要】 因为功能比较小,不值当的引入redis,生产的话也会增加部署复杂度,于是想实现类似redis失效时间的功能, 百度之,发现Guava Cache可以实现,但是多数是跟springboot 集成的,找了很久找到一个Util类代码如下: import com.google.common.cache.CacheBuilder;import...

因为功能比较小,不值当的引入redis,生产的话也会增加部署复杂度,于是想实现类似redis失效时间的功能,

百度之,发现Guava Cache可以实现,但是多数是跟springboot 集成的,找了很久找到一个Util类代码如下:


  
  1. import com.google.common.cache.CacheBuilder;
  2. import com.google.common.cache.CacheLoader;
  3. import com.google.common.cache.LoadingCache;
  4. import java.util.concurrent.ExecutionException;
  5. import java.util.concurrent.TimeUnit;
  6. /**
  7. * 内存缓存工具类
  8. * @author liuxi
  9. * @info 2019-10-17 14:38 liuxi
  10. *
  11. */
  12. public class GuavaCacheUtils {
  13. public static final String TOKEN_PREFIX = "token_";
  14. /**
  15. * 过期时间12小时
  16. * @info 2019-10-17 14:28 liuxi
  17. * 使用了LRU算法
  18. * @param null
  19. */
  20. private static LoadingCache localcache = CacheBuilder.newBuilder().initialCapacity(1000).maximumSize(10000).expireAfterAccess(2, TimeUnit.HOURS).build(new CacheLoader<Object, Object>() {
  21. // 如果 get取值的时候没有值,默认调用这个方法返回值
  22. @Override
  23. pu

文章来源: blog.csdn.net,作者:隔壁老瓦,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/wxb880114/article/details/107618849

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。