java中常用缓存cache机制的实现

java中常用缓存cache机制的实现

ID:27541566

大小:117.00 KB

页数:7页

时间:2018-12-03

java中常用缓存cache机制的实现_第1页
java中常用缓存cache机制的实现_第2页
java中常用缓存cache机制的实现_第3页
java中常用缓存cache机制的实现_第4页
java中常用缓存cache机制的实现_第5页
资源描述:

《java中常用缓存cache机制的实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、Cache所谓缓存,就是将程序或系统经常要调用的对象存在内存屮,一遍K使用时可以快速调用,不必再去创建新的重复的实例。这样做可以减少系统开销,提髙系统效率。缓存主耍可分为二大类:一、通过文件缓存,顾名思义文件缓存是指把数据存储在磁盘上,不管你是以XML格式,序列化文件DAT格式还是其它文件格式;二、内存缓存,也就是实现一个类屮静态Map,对这个Map进行常规的增删杏.代码如下:packagelhm.hcy.gugc.framcsct.cachc;importjava.util.*;//Description:宵理缓存://可扩展的功能:当chche到内存溢出时必须清除棹最单

2、期的-•些缓存对象,这就要求对毎个缓存对象保存创建时间publicclassCacheManager{privatestaticHashMapcachcMap=newHashMapO;//单实例构造方法privateCacheManager(){super();}//获取布尔值的缓存publicstaticbooleangetSimpleFlag(Stringkey){try{return(Boolean)cacheMap.get(key);}catch(NullPointcrExccptionc){returnfalse;publicstaticlonggctScrvcr

3、Startdt(Stringkcy){try{return(Long)cacheMap.get(key);)catch(Exceptionex){return0;}}//没®布尔值的缓存publicsynchronizedstaticbooleansetSimpleFlag(Stringkey,booleanflag){if(flag&&getSimpIeFlag(key)){//假如为真不允许被覆盖returnfalse;}else{cacheMap.put(key,flag);returntrue;}}publicsynchronizedstaticbooleanset

4、SimpleFlag(StringkeyJongserverbegrundt){if(cacheMap.get(key)==null){cacheMap.put(key,serverbegrundt);returntrue;}else{returnfalse;//得到缓存。同步静态方法privatesynchronizedstaticCachegetCache(Stringkey){return(Cache)cacheMap.get(key);}//判断是否存在一个缓存privatesynchronizedstaticbooleanhasCache(Stringkey){r

5、eturncacheMap.containsKey(key);}//猜除所有缓存publicsynchronizedstaticvoidclearA11(){cacheMap.clear();}//消除某一类特定缓存,通过遍历HASHMAP卜‘的所有对象,來判断它的KEY与传入的TYPE是否匹配publicsynchronizedstaticvoidclearAll(Stringtype){Iteratori=cachcMap.cntrySct().itcrator();Stringkey;ArrayListarr=newArrayList();try{while(i.ha

6、sNext()){java.util.Map.Entryentry=(java.util.Map.Entry)i.ncxt();key=(String)entry.getKeyO;if(key.startsWith(type)){//如果匹配则删除掉arr.add(key);}}for(intk=0;k

7、y){cacheMap.remove(key);}//载入缓存publicsynchronizedstaticvoidputCachc(Stringkey,Cacheobj){cacheMap.put(key,obj);}//获取缓存信息publicstaticCachegctCachcInfo(Stringkey){if(hasCache(key)){Cachecache=getCache(key);if(cachcExpircd(cachc)){//调用判断足么终止方法cache.sctExpircd(truc

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。