zoukankan      html  css  js  c++  java
  • JCS缓存使用类

    项目是一个门户网站,一些新闻等会做缓存.

    导入jar包:

    项目跟目录下配置文件:cache.ccf

    #内存缓存
    jcs.default=
    jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
    jcs.default.cacheattributes.MaxObjects=1000
    jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
    #过期时间设定
    #jcs.default.cacheattributes.cacheattributes.UseMemoryShrinker=true
    #jcs.default.cacheattributes.cacheattributes.MaxMemoryIdleTimeSeconds=3600
    #jcs.default.cacheattributes.cacheattributes.ShrinkerIntervalSeconds=60

    自己的工具类:JCSManager

    package coffee.util.jcs;
    
    import org.apache.jcs.JCS;
    import org.apache.jcs.access.exception.CacheException;
    import org.apache.log4j.Logger;
    
    public class JCSManager {
        private static JCSManager instance;
        private static int checkedOut=0;
        private static JCS ObjCache;
        static Logger log =Logger.getLogger(JCSManager.class);
        
        private JCSManager(){
            try {
                ObjCache=JCS.getInstance("dc");//这个dc相当于一个regions
            } catch (CacheException e) {
                e.printStackTrace();
            }
        }
        
        public static JCSManager getInstance(){
            synchronized(JCSManager.class){
                if(instance==null){
                    instance= new  JCSManager();
                }
            }
            synchronized(instance){
                instance.checkedOut++;
            }
            return instance;
        }
        //取出缓存
        public Object getObj(Object key){
            Object obj=null;
            obj=(Object)ObjCache.get(key);
            return obj;
        }
        //放入缓存
        public void storeObject(Object key,Object obj){
            try {
                ObjCache.put(key, obj);
            } catch (CacheException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        //删除缓存
        public void removeObject(Object key){
            try {
                ObjCache.remove(key);
            } catch (CacheException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        //清除所有缓存
        public void clear(){
            try {
                ObjCache.clear();
            } catch (CacheException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
  • 相关阅读:
    《架构漫谈》有感
    《掌握需求过程》阅读笔记三
    《掌握需求过程》阅读笔记二
    《掌握需求过程》阅读笔记一
    《代码阅读方法与实现》阅读笔记三
    《代码阅读方法与实现》阅读笔记二
    《代码阅读方法与实现》阅读笔记一
    《软件需求模式》阅读笔记三
    《软件需求模式》阅读笔记二
    第二阶段个人总结06
  • 原文地址:https://www.cnblogs.com/clovem/p/5752276.html
Copyright © 2011-2022 走看看