
SpringBoot入门到精通-基于Google Guava Cache Util工具类实现本地缓存设置过期时间
发布日期:2021-05-20 11:49:03
浏览次数:25
分类:精选文章
本文共 1576 字,大约阅读时间需要 5 分钟。
在我们的项目中,我们不引入Redis,因为这会增加部署的复杂性,因此决定使用Guava Cache来实现类似Redis失效时间的功能。
通过研究,发现Guava Cache非常适合完成缓存操作,特别是当项目不依赖Spring Boot时。以下是我们优化后的实现方案。
Guava Cache Util类代码
import com.google.common.cache.CacheBuilder;import com.google.common.cache.CacheLoader;import com.google.common.cache.LoadingCache;import java.util.concurrent.ExecutionException;import java.util.concurrent.TimeUnit;/** * 内存缓存工具类 * @author liuxi * @info 2019-10-17 14:38 liuxi * 使用了LRU算法 */public class GuavaCacheUtils { public static final String TOKEN_PREFIX = "token_"; /** 过期时间:12小时 */ private static LoadingCache localcache = CacheBuilder.newBuilder() .initialCapacity(1000) .maximumSize(10000) .expireAfterAccess(2, TimeUnit.HOURS) .build(new CacheLoader
Maven依赖配置
确保项目中引入正确版本的Guava依赖,以避免版本冲突:
com.google.guava guava 26.0-jre
Official Documentation链接
Guava Cache的官方文档提供了详细的API文档和使用指南:
通过以上配置,我们可以成功实现类似Redis失效时间的功能,同时避免了引入额外依赖和复杂的部署过程。
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2025年05月06日 05时10分55秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
常用Android模拟器的默认监听端口(转载)
2019-03-21
unicorn教程三
2019-03-21
Exploit-Exercise之Protostar-format
2019-03-21
python解释器环境问题
2019-03-21
hakcinglab解密关WP
2019-03-21
ubuntu系统重新更新系统服务
2019-03-21
内存访问冲突
2019-03-21
深度学习与机器学习配置
2019-03-21
文档矫正
2019-03-21
MONASH-creatiue coding
2019-03-21
卷积的可视化学习
2019-03-21
图像质量评估仿真
2019-03-22
关于mac下redis5.0.8的安装和配置
2019-03-22
PHP使用之图片上传程序(完整版)
2019-03-22
Appium之设置环境变量.bash_profile
2019-03-22
字符串匹配算法---BF
2019-03-22
vue之tab切换
2019-03-22
数组上移下移 更改其值
2019-03-22