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();
}
}
}
JCS缓存使用类的更多相关文章
- thrift之TTransport层的缓存传输类TBufferedTransport和缓冲基类TBufferBase
本节主要介绍缓冲相关的传输类,缓存的作用就是为了提高读写的效率.Thrift在实现缓存传输的时候首先建立一个缓存的基类,然后需要实现缓存功能的类都可以直接从这个基类继承.下面就详细分析这个基类以及一个 ...
- 利用Spring.Net技术打造可切换的分布式缓存读写类
利用Spring.Net技术打造可切换的Memcached分布式缓存读写类 Memcached是一个高性能的分布式内存对象缓存系统,因为工作在内存,读写速率比数据库高的不是一般的多,和Radis一样具 ...
- [Cache] C#操作缓存--CacheHelper缓存帮助类 (转载)
点击下载 CacheHelper.zip CacheHelper 缓存帮助类 C#怎么操作缓存 怎么设置和取缓存数据,都在这个类里面呢 下面看一下代码吧 /// <summary> /// ...
- thrift之TTransport层的内存缓存传输类TMemoryBuffer
内存缓存是简单的在内存进行读写操作的一种传输,任何时候想在上面写入数据都是放入缓存中,任何时候读操作数据也是来至于缓存.内存缓存的分配使用c语言的malloc类函数,分配的长度是需要长度的两倍,需要考 ...
- Cache【硬盘缓存工具类(包含内存缓存LruCache和磁盘缓存DiskLruCache)】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 内存缓存LruCache和磁盘缓存DiskLruCache的封装类,主要用于图片缓存. 效果图 代码分析 内存缓存LruCache和 ...
- 分享基于MemoryCache(内存缓存)的缓存工具类,C# B/S 、C/S项目均可以使用!
using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Caching; usi ...
- System.Web.Caching.Cache缓存帮助类
/// <summary> /// 缓存帮助类 /// </summary> public class CacheHelper { /// <summary> // ...
- 封装php redis缓存操作类
封装php redis缓存操作类,集成了连接redis并判断连接是否成功,redis数据库选择,检测redis键是否存在,获取值,写入值,设置生存时间和删除清空操作. php redis类代码: &l ...
- C# 缓存工厂类
描 述:缓存工厂类 /// <summary> /// 描 述:缓存工厂类 /// </summary> public class CacheFactory { /// < ...
随机推荐
- Oracle一个事务中的Insert和Update执行顺序
今天碰到了一个奇怪的问题,是关于Oracle一个事务中的Insert和Update语句的执行顺序的问题. 首先详细说明下整个过程: 有三张表:A,B,C,Java代码中有一段代码是先在表A中插入一条数 ...
- oracle 中数据库完全导入导出:cmd命令行模式(转载)
http://www.3lian.com/edu/2012/12-01/47252.html Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库 ...
- 查找增强出口和BADI程序
*&---------------------------------------------------------------------* *& Report Z_FIND_EX ...
- js判断是否是微信浏览器
<script type="text/javascript"> window.onload = function(){ if(isWeiXin()){ var p = ...
- 关于app隐私设置跳转
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]] ...
- wampServer安装注意
http://www.glbwl.com/wampServer-403-forbidden.html http://jingyan.baidu.com/article/e75aca8578147d14 ...
- HttpContext.GetOwinContext().Authentication 报错 解决办法
HttpContext.GetOwinContext().Authentication 会提示 不包含GetOwinContext 方法的报错信息 解决办法:引入system.web程序集,GetOw ...
- SetProcessAffinityMask的问题
BOOL WINAPI SetProcessAffinityMask( _In_ HANDLE hProcess, _In_ DWORD_PTR dwProcessAffinityMask );//M ...
- linux下关于Apache设置二级域名绑定二级目录的方法
背景:对于一些论坛网站,某些目录需要制定二级域名去访问,这时候就要在apache中用二级域名绑定二级目录. 方法: 1.首先你要找到apache安装路径,在apahce安装路径下的conf文件夹中找到 ...
- VS一次删除多个窗体后报错
今天在做项目的时候,需要删除多个窗体,删除了之后,VS报了个错误: 命名空间“项目名称”中不存在类型或命名空间名称“文件夹”(是否缺少程序集引用?) 具体原因不清楚,就算恢复窗体后还是一样的错误,无法 ...