mingche 发表于 2016-12-18 11:38:17

redis 工具类

  redis操作的工具类


import java.util.Map;
import org.apache.log4j.Logger;
import redis.clients.jedis.Jedis;
import com.chanjet.gov.service.Const;

public class RedisUtil {
public static Logger logger = Logger.getLogger(RedisUtil.class);

private Jedis jedis;
private Jedis jedisForIP;
private RedisHelper() {//每次从池里取新连接
this.jedis = Const.pool.getResource();
this.jedis.select(11);
this.jedisForIP = this.jedis;
}
public static RedisHelper getInstance() {
RedisHelper instance = new RedisHelper();

//      if(!instance.jedis.isConnected()){
//            instance.jedis.connect();
//      }
//
//      //如果读取失败,关闭并重新连接
//      try{
//            String v = instance.jedis.get("test_connect");
//      }catch(Exception e){
//            instance.jedis.close();
//            instance.jedis.connect();
//      }
return instance;
}
public Jedis getClient() {
return jedis;
}
public Jedis getClientForIP() {
return jedisForIP;
}
public void saveCache(String k, String v) {
try{
jedis.set(k, v);
}catch (Exception e){
e.printStackTrace();
logger.error("saveCache",e);
Const.pool.returnBrokenResource(jedis);
}finally {
Const.pool.returnResource(jedis);
}
}
public void saveKeyCache(String id, String k, String v) {
try{
jedis.hset(id, k, v);
}catch (Exception e){
e.printStackTrace();
logger.error("saveKeyCache",e);
Const.pool.returnBrokenResource(jedis);
}finally {
Const.pool.returnResource(jedis);
}
}
public void saveAllKeyCache(String id, Map kv) {
try{
jedis.hmset(id, kv);
}catch (Exception e){
e.printStackTrace();
logger.error("saveAllKeyCache",e);
Const.pool.returnBrokenResource(jedis);
}finally {
Const.pool.returnResource(jedis);
}
}
public void clearKeyCache(String id, String k) {
try{
jedis.hdel(id, k);
}catch (Exception e){
e.printStackTrace();
logger.error("clearKeyCache",e);
Const.pool.returnBrokenResource(jedis);
}finally {
Const.pool.returnResource(jedis);
}
}
public String getCache(String k) {
String v = "";
try{
v = jedis.get(k);
}catch (Exception e){
e.printStackTrace();
logger.error("getCache",e);
Const.pool.returnBrokenResource(jedis);
}finally {
Const.pool.returnResource(jedis);
}
return v;
}
public String getKeyCache(String id,String k) {
String v = "";
try{
v = jedis.hget(id, k);
}catch (Exception e){
e.printStackTrace();
logger.error("getKeyCache",e);
Const.pool.returnBrokenResource(jedis);
}finally {
Const.pool.returnResource(jedis);
}
return v;
}
public Map getAllKeyCache(String id) {
Map v = null;
try{
v = jedis.hgetAll(id);
}catch (Exception e){
e.printStackTrace();
logger.error("getAllKeyCache",e);
Const.pool.returnBrokenResource(jedis);
}finally {
Const.pool.returnResource(jedis);
}
return v;
//      Map v = jedis.hgetAll(id);
//      return v;
}
public void clearCache(String id) {
try{
jedis.del(id);
}catch (Exception e){
e.printStackTrace();
logger.error("clearCache",e);
Const.pool.returnBrokenResource(jedis);
}finally {
Const.pool.returnResource(jedis);
}
//      jedis.del(id);
}
}

  使用

String needLogin = RedisUtil.getInstance().getKeyCache(cid,"needJsonp");
String password = RedisUtil.getInstance().getKeyCache(id,"password");
页: [1]
查看完整版本: redis 工具类