public class CacheMap { /** * 数据缓存map */ private static Map<String, Object> dataMap = new ConcurrentHashMap<String, Object>(); /** * 数据缓存过期map */ private static Map<String,Date> dataExpireMap = new ConcurrentHashMap<String, Date>(); /** * 将一个key、value值放入内存缓存,并设置过期分钟数 * * @param key * @param val * @param expireMiute */ public static void put(String key, Object val, int expireMiute) { dataMap.put(key, val); dataExpireMap.put(key,addMinutes(expireMiute)); } /** * 从缓存中获取一个key的数据(若过期返回null) * * @param cacheKey * @return */ public static Object get(String cacheKey) { Object obj = null; Date expireDate = CacheMap.dataExpireMap.get(cacheKey); if (expireDate != null && expireDate.compareTo(new Date()) > 0) { obj = CacheMap.dataMap.get(cacheKey); } return obj; } public static Date addMinutes(int expireMiute){ long currentTime = System.currentTimeMillis(); currentTime += expireMiute*1000; Date date=new Date(currentTime); return date; } }
ConcurrentHashMap单服务缓存工具类
猜你喜欢
转载自blog.csdn.net/qq_29884151/article/details/80568865
今日推荐
周排行