map全局缓存demo
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap; import org.apache.log4j.Logger;
public class MapCache {
protected Logger log=Logger.getLogger(getClass().getName());
private static Map<Object, Object> cacheMap = new ConcurrentHashMap<Object, Object>(); public static void destoryCacheMap() {
cacheMap = null;
} public static Map<Object, Object> getCacheMap() {
return cacheMap;
} public static void set(Object key, Object values) {
cacheMap.put(key, values);
} public static Object get(Object key) {
return cacheMap.get(key);
} public static String getString(Object key) {
return (String) cacheMap.get(key);
} public static Object getToEmpty(Object key) {
Object o = cacheMap.get(key);
if (o == null)
return "";
else
return o;
} public static void remove(Object key) {
cacheMap.remove(key);
} public static void clear() {
cacheMap.clear();
}
}
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap; public class CachePool {
private static CachePool cachePool;
private Map<Object, Object> cacheItems;
private CachePool() {
cacheItems =new ConcurrentHashMap<Object, Object>();
}
/**
* 获取唯一实例
* @return instance
*/
public static CachePool getInstance() {
if (cachePool ==null) {
synchronized (CachePool.class) {
if (cachePool ==null) {
cachePool =new CachePool();
}
}
}
return cachePool;
} /**
* 获取所有cache信息
* @return cacheItems
*/
public Map<Object, Object> getCacheItems() {
return this.cacheItems;
} /**
* 清空cache
*/
public void clearAllItems() {
cacheItems.clear();
} /**
* 获取指定cache信息
* @return cacheItem
*/
public Object getCacheItem(Object key) {
if (cacheItems.containsKey(key)) {
return cacheItems.get(key);
}
return null;
} /**
* 存放cache信息
*/
public void putCacheItem(Object key,Object value) {
if (!cacheItems.containsKey(key)) {
cacheItems.put(key, value);
}
} /**
* 删除一个cache
*/
public void removeCacheItem(Object key) {
if (cacheItems.containsKey(key)) {
cacheItems.remove(key);
}
} /**
* 获取cache长度
* @return size
*/
public int getSize() {
return cacheItems.size();
} }
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap; public class CacheTime {
private static CacheTime cacheTime;
private Map<Object, Object> cacheTimes;
private CacheTime() {
cacheTimes =new ConcurrentHashMap<Object, Object>();
}
/**
* 获取唯一实例
* @return instance
*/
public static CacheTime getInstance() {
if (cacheTime ==null) {
synchronized (CacheTime.class) {
if (cacheTime ==null) {
cacheTime =new CacheTime();
}
}
}
return cacheTime;
} /**
* 获取所有cache信息
* @return cacheItems
*/
public Map<Object, Object> getCacheItems() {
return this.cacheTimes;
} /**
* 清空cache
*/
public void clearAllItems() {
cacheTimes.clear();
} /**
* 获取指定cache信息
* @return cacheItem
*/
public Object getCacheItem(Object key) {
if (cacheTimes.containsKey(key)) {
return cacheTimes.get(key);
}
return null;
} /**
* 存放cache信息
*/
public void putCacheItem(Object key,Object value) {
if (!cacheTimes.containsKey(key)) {
cacheTimes.put(key, value);
}
} /**
* 删除一个cache
*/
public void removeCacheItem(Object key) {
if (cacheTimes.containsKey(key)) {
cacheTimes.remove(key);
}
} /**
* 获取cache长度
* @return size
*/
public int getSize() {
return cacheTimes.size();
} }
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap; import org.apache.log4j.Logger; //此Map缓存针对处理排行榜数据接口
public class timeMapUtil {
protected Logger log=Logger.getLogger(getClass().getName());
private static Map<Integer,String> cacheMap=new ConcurrentHashMap<Integer,String>();
private static Map<Integer,String> daymap=new ConcurrentHashMap<Integer,String>();
private static Map<Integer,String> weekmap=new ConcurrentHashMap<Integer,String>();
private static Map<Integer,String> monthmap=new ConcurrentHashMap<Integer,String>();
private static Map<Integer,String> floorday=new ConcurrentHashMap<Integer,String>();
private static Map<Integer,String> floorweek=new ConcurrentHashMap<Integer,String>();
private static Map<Integer,String> floormonth=new ConcurrentHashMap<Integer,String>();
public static void destoryCacheMap(){
cacheMap=null;
}
public static Map<Integer,String> getCacheMap() {
return cacheMap;
} public static void set(int key, String values) {
cacheMap.put(key, values);
} public static String get(int key) {
return cacheMap.get(key);
} public static String getString(int key) {
return (String) cacheMap.get(key);
} public static Object getToEmpty(int key) {
Object o = cacheMap.get(key);
if (o == null)
return "";
else
return o;
} public static void remove(int key) {
cacheMap.remove(key);
} public static void clear() {
cacheMap.clear();
}
//今日
public static String getday(int key) {
return (String) daymap.get(key);
}
public static void setday(int key, String values) {
daymap.put(key, values);
}
//本周
public static String getweek(int key) {
return (String) weekmap.get(key);
}
public static void setweek(int key, String values) {
weekmap.put(key, values);
}
//本月
public static String getmonth(int key) {
return (String) monthmap.get(key);
}
public static void setmonth(int key, String values) {
monthmap.put(key, values);
}
//昨日
public static String getfloorday(int key) {
return (String) floorday.get(key);
}
public static void setfloorday(int key, String values) {
floorday.put(key, values);
}
//上周
public static String getfloorweek(int key) {
return (String) floorweek.get(key);
}
public static void setfloorweek(int key, String values) {
floorweek.put(key, values);
}
//上月
public static String getfloormonth(int key) {
return (String) floormonth.get(key);
}
public static void setfloormonth(int key, String values) {
floormonth.put(key, values);
}
}
map全局缓存demo的更多相关文章
- 单例设计模式全局缓存accessToken
使用微信JS-SDK开发的小伙伴们,看文档经常会看到这样一句话:(下面是微信开发文档的一部分原话截图) 这句话就是:开发者必须在自己的服务全局缓存access_token,jsapi_ticket 下 ...
- MySQL内存----使用说明全局缓存+线程缓存) 转
MySQL内存使用说明(全局缓存+线程缓存) 首先我们来看一个公式,MySQL中内存分为全局内存和线程内存两大部分(其实并不全部,只是影响比较大的 部分): per_thread_buffers=(r ...
- java使用Map做缓存你真的用对了吗?弱引用WeakHashMap了解一下
目录 关于缓存我们应该考虑什么?-intsmaze WeakHashMap弱引用-intsmaze 线程安全问题-intsmaze Collections-intsmaze ThreadLocal-i ...
- 使用gacutil把COM组件注册到全局缓存GAC中
我们在编写软件的时候,有时候需要调用COM组件,那就需要注册了,注册有两种,一种是使用regasm 在程序运行的时候注册,参考“pb调用C#编写的DLL类库“,不过受路径的限制.还有一种注册方式,使用 ...
- openresty开发系列30--openresty中使用全局缓存
openresty开发系列30--openresty中使用全局缓存 Nginx全局内存---本地缓存 使用过如Java的朋友可能知道如Ehcache等这种进程内本地缓存.Nginx是一个Master进 ...
- Mybatis开启二级缓存(全局缓存)的方法
Mybatis开启二级缓存的方法 开启步骤 1.在 mybatis-config.xml 的配置文件中进行显示配置,开启二级缓存(全局缓存) 2.在 Mapper.xml 文件中添加cache标签 一 ...
- Map实现缓存
为什么要使用缓存 缓存最终的目的是为减轻服务端压力,减少网络传输请求 客户端缓存 浏览器访问自带缓存~~ 页面缓存 浏览器缓存 App客户端缓存 IOS 前端开发 底层都有缓存技术的 ( ...
- TinyFrame升级之五:全局缓存的设计及实现
在任何框架中,缓存都是不可或缺的一部分,本框架亦然.在这个框架中,我们的缓存分为两部分:内存缓存和单次请求缓存.简单说来,就是一个使用微软提供的MemoryCache做扩展,并提供全局唯一实例:另一个 ...
- Java 使用 Map 实现缓存工具
以下代码参考于网上,做了小部分修改. 该代码实现了定时清除临时缓存的功能. 缓存管理类 package com.wbproject.util.cache; import java.time.Local ...
随机推荐
- ADB命令笔记本
ADB即Android Debug Bridge,作为电脑操作手机的工具,被Android开发者和众多国内xxx安全管家所使用.在此记录一些常见的命令,随时更新,方便以后查找.(万一以后我也要开发一款 ...
- Faster RCNN 爬坑记录
训练 在博客http://blog.csdn.net/Suii_v5/article/details/73776299中介绍了基本的错误类型.我只是做一些自己问题的补充 在error6中,调整nump ...
- PyCharm安装MicroPython插件
转载请注明文章来源,更多教程可自助参考docs.tpyboard.com,QQ技术交流群:157816561,公众号:MicroPython玩家汇 前言 PyCharm可以说是当今最流行的一款Pyth ...
- Microsoft Development Platform Technologies
- JDK JRE JVM 分别是什么
JDK: Java Development Kit Java 开发工具包 JRE: Java Runtime Enviroment Java 运行时环境 JVM: Java Virtual Machi ...
- MD5加密工具代码
找到一个开源的MD5加密工具代码,收藏起来 /** * MD5加密工具 */ public class MD5Utils { /** * byte[]字节数组 转换成 十六进制字符串 * @param ...
- Java NIO 学习笔记(二)----聚集和分散,通道到通道
目录: Java NIO 学习笔记(一)----概述,Channel/Buffer Java NIO 学习笔记(二)----聚集和分散,通道到通道 Java NIO 学习笔记(三)----Select ...
- yii中 columnszii.widgets.grid.CGridView
<?php $this->widget('zii.widgets.grid.CGridView', array( 'id'=>'chapter-grid', 'dataProvide ...
- Jenkins+Python+GitLab持续集成
创建任务 登录Jenkins,点击左侧列表的新建选项.输入任务名称,选择构建一个自由风格的软件项目,点击确定. 配置 在任务配置界面,可以设置General标签中的丢弃旧的构建选项,设置保持构建的天数 ...
- 100天搞定机器学习|Day1数据预处理
数据预处理是机器学习中最基础也最麻烦的一部分内容 在我们把精力扑倒各种算法的推导之前,最应该做的就是把数据预处理先搞定 在之后的每个算法实现和案例练手过程中,这一步都必不可少 同学们也不要嫌麻烦,动起 ...