论坛首页 编程语言技术论坛

redis 工具类

浏览 4280 次
锁定老帖子 主题:redis 工具类
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
作者 正文
   发表时间:2015-06-24  

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");

 

 

   发表时间:2015-07-01  
pool是自己写的?
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics