首页>代码>java缓存工具类,支持主流的缓存memcache redis两种缓存系统>/cache-util/src/main/java/net/easipay/cache/service/imp/MemCachedServiceImp.java
package net.easipay.cache.service.imp;
import java.util.Date;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import net.easipay.cache.client.manager.CacheClientManager;
import net.easipay.cache.service.CacheService;
import net.easipay.cache.util.SerializeUtil;
public class MemCachedServiceImp implements CacheService{
Logger logger = LoggerFactory.getLogger(MemCachedServiceImp.class);
public boolean add(String key, Object value) {
logger.debug("Memcache add---key:"+key);
return CacheClientManager.getMemCachedClient().add(key, SerializeUtil.serialize(value));
}
public boolean add(String key, Object value, int expire) {
logger.debug("Memcache add---key:"+key+",expire time(s):"+expire);
return CacheClientManager.getMemCachedClient().add(key, SerializeUtil.serialize(value),new Date(1000*expire));
}
public boolean set(String key, Object value) {
logger.debug("Memcache set---key:"+key);
return CacheClientManager.getMemCachedClient().set(key, SerializeUtil.serialize(value));
}
public boolean set(String key, Object value, int expire) {
logger.debug("Memcache set---key:"+key+",expire time(s):"+expire);
return CacheClientManager.getMemCachedClient().set(key, SerializeUtil.serialize(value),new Date(1000*expire));
}
public <T>Object get(String key,Class<T> clazz) {
logger.debug("Memcache get---key:"+key);
Object obj=CacheClientManager.getMemCachedClient().get(key);
if(obj!=null){
return SerializeUtil. unserialize(obj.toString(),clazz);
}
return null;
}
public <T>Object getList(String key,Class<T> clazz) {
logger.debug("Memcache getList---key:"+key);
Object obj=CacheClientManager.getMemCachedClient().get(key);
if(obj!=null){
return SerializeUtil. unserializeList(obj.toString(),clazz);
}
return null;
}
public boolean delete(String key) {
logger.debug("Memcache del---key:"+key);
return CacheClientManager.getMemCachedClient().delete(key);
}
public Long incr(String key,Long inc) {
logger.debug("Memcache incr---key:"+key+",inc:"+inc);
Object obj=CacheClientManager.getMemCachedClient().get(key);
if(obj==null){
CacheClientManager.getMemCachedClient().add(key, "0");
}
return CacheClientManager.getMemCachedClient().incr(key, inc);
}
public Long decr(String key,Long inc) {
logger.debug("Memcache decr---key:"+key+",inc:"+inc);
return CacheClientManager.getMemCachedClient().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日
暂无贡献等级

