当前位置:网站首页>使用hutool做本地缓存的工具类
使用hutool做本地缓存的工具类
2022-08-02 06:40:00 【阿拉的梦想】
gradle中引入hutool依赖
implementation group: 'cn.hutool', name: 'hutool-all', version: '5.8.4'
本地缓存工具类
package com.demo.devops.common.cache;
import cn.hutool.cache.CacheUtil;
import cn.hutool.cache.impl.TimedCache;
import cn.hutool.core.date.DateUnit;
/** * @createTime 2022年07月30日 14:50:00 */
public class LocalCache {
/** * 默认缓存时长 单位ms */
private static final Long DEFAULT_TIMEOUT = 5 * 60 * 1000L;
/** * 默认清理间隔时间 单位ms */
private static final Long CLEAN_TIMEOUT = 5 * 60 * 1000L;
/** * 缓存对象 */
private static TimedCache<String, Object> timedCache = CacheUtil.newTimedCache(DEFAULT_TIMEOUT);
static {
//启动定时任务
timedCache.schedulePrune(CLEAN_TIMEOUT);
}
public static void set(String key, Object value) {
timedCache.put(key, value);
}
public static void set(String key, Object value, Integer expire) {
timedCache.put(key, value, DateUnit.SECOND.getMillis() * expire);
}
/** * 禁止延迟缓存 isUpdateLastAccess = false * * @param key * @param isUpdateLastAccess 重新计算过期时间 */
public static Object get(String key, boolean isUpdateLastAccess) {
return timedCache.get(key, isUpdateLastAccess);
}
public static Object get(String key) {
return timedCache.get(key);
}
public static void remove(String key) {
timedCache.remove(key);
}
public static void clear() {
timedCache.clear();
}
public static class Constants{
public static final String DICT_LIST_PREFIX ="DICT:LIST:";
public static final String DICT_MAP_PREFIX ="DICT:MAP:";
}
}
边栏推荐
猜你喜欢
随机推荐
Servlet
暑期总结(三)
电商库存系统的防超卖和高并发扣减方案
Resolving C# non-static field, method or property "islandnum.Program.getIslandCount(int[][], int, int)" requires an object reference
雷达人体存在感应器方案,智能物联网感知技术,实时感应人体存在
封装class类一次性解决全屏问题
武汉高性能计算大会2022举办,高性能计算生态发展再添新动力
【暑期每日一题】洛谷 P1551 亲戚
Day 4 of HCIP
第06章 索引的数据结构【2.索引及调优篇】【MySQL高级】
GCC编译器技术解析
MQ带来的一些问题、及解决方案
Facebook社媒营销的5大技巧,迅速提高独立站转化率!
结构体大小计算--结构体内存对齐
有趣的网站
【请教】SQL语句按列1去重来计算列2之和
.NET Static Code Weaving - Rougamo Release 1.1.0
chrome plugin development guide
深度学习网络模型的改进与调整
入门opencv,欢笑快乐每一天