java 缓存接口,java项目中,针对缓存问题的处理方式【接口中的处理方式】
1、在service包中,分別建立了關于緩存的一系列的接口、類等,封裝到一個工具包中;
臨時緩存的接口(代碼部分):
packagecom.tools;importjava.util.Date;public interfaceCacheTemplet {//設置添加永久緩存,(緩存唯一索引,緩存數據)
public voidaddCache(Object key,Object value);//設置添加緩存,不過需要有一個過期的時間毫秒數限制
public voidaddCache(Object key,Object value,Long duration);//設置添加緩存,需要有一個date類型的時間限制
public voidaddCache(Object key,Object value,Date expire);//獲取緩存信息,根據key獲取緩存信息
publicObject getCache(Object key);//刪除緩存信息,根據key值進行刪除
public voidDelCache(Object key);
}
2、再建立一個關于"緩存的工廠",用于獲取緩存的實現,從工廠中獲取到緩存對象,然后從緩存對象中對緩存信息進行操作(獲取也好,刪除也可以);
packagecom.tools;//緩存工廠
public classCacheFactory {//無參構造器
privateCacheFactory(){ }//私有的成員變量
private CacheTemplet cacheTemplet = null;//獲取JVM緩存(未寫完)public CacheTemplet GetCache(){....}//獲取緩存
public CacheTemplet GetCache(CacheEnum cacheEnum){...}
//Redis連接池
private RedisPool redisPool;
//接下來就是相應的set方法,沒有用到get方法,
public void setRedisPool(RedisPool redisPool){...}
private static CacheFactory cacheFactory = null;
//獲取緩存工廠
public static CacheFactory GetCacheFactory()?{...}
.
.
.
.
........
}
3、然后在相應的service實現類中,具體的使用方法如下:java代碼
//獲取距離用戶最近的飯店
public List> putSale(final String product,final String userTell){
//首先從實例化緩存臨時對象
CacheTemplet cacheTemplet = CacheFactory.GetCacheFactory().GetCache(
CacheEnum.Redis);//臨時緩存,獲取緩存工廠,獲取緩存實現
//在創建緩存實體類對象
List> storeInRe = new ArrayList>() ;
.....
Map e = new HashMap();
e.put("yxwddh", yxwddh); // 飯店電話
storeInRe.add(e);//添加緩存信息
}
原文:http://www.cnblogs.com/FanSunny/p/4875380.html
總結
以上是生活随笔為你收集整理的java 缓存接口,java项目中,针对缓存问题的处理方式【接口中的处理方式】的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java perl5compiler,J
- 下一篇: oracle 数据执行计划,Oracle