首页>代码>java缓存工具类,支持主流的缓存memcache redis两种缓存系统>/cache-util/src/main/java/net/easipay/cache/client/CacheClient.java
package net.easipay.cache.client;
import net.easipay.cache.config.CacheConfig;
import net.easipay.cache.service.CacheService;
import net.easipay.cache.service.imp.MemCachedServiceImp;
import net.easipay.cache.service.imp.RedisCachedServiceImp;
public class CacheClient {
public static int CACHEMODE_MEMCACHED=1;// 1-memcached
public static int CACHEMODE_REDIS=2;//2-redis
static CacheService cache;
static{
if(CacheConfig.getCacheMode()==CACHEMODE_MEMCACHED){
if(cache==null){
cache=new MemCachedServiceImp();
}
}
if(CacheConfig.getCacheMode()==CACHEMODE_REDIS){
if(cache==null){
cache=new RedisCachedServiceImp();
}
}
}
/**
* 向缓存添加键值对,如果 add 的 key 已经存在,则不会更新数据,之前的值将仍然保持相同
*
*/
public static boolean add(String key, Object value) {
return cache.add(key, value);
}
/**
* 向缓存添加键值对,如果 add 的 key 已经存在,则不会更新数据,之前的值将仍然保持相同,并为该键值对设定逾期时间(即多长时间后该键值对从缓存中删除,单位秒:s)
*
*/
public static boolean add(String key, Object value, int expire) {
return cache.add(key, value,expire);
}
/**
* 向缓存添加键值对,如果key存在则覆盖原来的value
*
*/
public static boolean set(String key, Object value) {
return cache.set(key, value);
}
/**
* 向缓存添加键值对,如果key存在则覆盖原来的value并为该键值对设定逾期时间(即多长时间后该键值对从缓存中删除,单位秒:s)
*
*/
public static boolean set(String key, Object value, int expire) {
return cache.set(key, value, expire);
}
/**
* 根据键获取缓存管理系统中相应的值
*
*/
public static <T>Object get(String key,Class<T> clazz) {
return cache.get(key,clazz);
}
/**
* 根据键获取缓存管理系统中相应的值
*
*/
public static <T>Object getList(String key,Class<T> clazz) {
return cache.getList(key,clazz);
}
/**
* 根据键删除缓存管理系统中相应的值
*
*/
public static boolean delete(String key) {
return cache.delete(key);
}
/**
* 对已存在的 key(键) 的数字值进行自增操作
*
*/
public static Long incr(String key,Long inc) {
return cache.incr(key, inc);
}
/**
* 对已存在的 key(键) 的数字值进行自减操作
*
*/
public static Long decr(String key,Long inc) {
return cache.decr(key, inc);
}
}
最近下载更多
weixiao LV6
2020年5月18日
tangzhengqi LV8
2019年12月31日
lironggang LV38
2019年7月17日
lanjf2000 LV1
2019年5月20日
王晓波 LV16
2018年11月25日
wangfengnan LV6
2018年9月3日
xshxxm1 LV21
2018年7月21日
最代码官方 LV168
2018年6月30日
最近浏览更多
kinggode LV14
8月21日
微信网友_6489792788402176
2023年5月24日
暂无贡献等级
小白queen LV1
2022年12月22日
tianli3000 LV8
2022年6月13日
落后就要挨打 LV26
2021年6月16日
是pangpang呀 LV6
2021年5月21日
耀眼的星星 LV3
2021年4月17日
Killah LV9
2021年4月16日
a992013093 LV15
2021年3月2日
youzichao
2021年2月1日
暂无贡献等级

