平凡也就两个字: 懒和惰;
成功也就两个字: 苦和勤;
优秀也就两个字: 你和我。
跟着我从0学习JAVA、spring全家桶和linux运维等知识,带你从懵懂少年走向人生巅峰,迎娶白富美!
关注微信公众号【IT特靠谱 】,每天都会分享技术心得~
【java】本地(内存)缓存实战--LocalCache
数据缓存有多种方式,也有不同存储媒介。如redis、cookie、session、memcache等,这里却要说的是一种存储在内存中的对象缓存,这里称为:LocalCache。
闲话少说,重点都在代码里面!
1 缓存工具类
我把实现本地缓存的代码整理形成了一个java工具类:LocalCacheUtil.java。
1)调用save()方法,可以添加缓存,并指定过期时间。
2)调用load()方法可以从本地缓存中读取数据,如果缓存过期了,则返回null,业务层需要从数据库等持久化存储库中查询数据,并再次缓存起来。
3)也可以调用clearCache()方法手动删除指定key缓存。
4)定时任务会每隔5分钟定时清理一次已过期的缓存数据。
package com.hc.alltest.localCache;
import com.alibaba.fastjson.parser.ParserConfig;
import com.alibaba.fastjson.util.TypeUtils;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
imp