`

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

 

 

分享到:
评论

相关推荐

    Redis工具类

    在Java开发中,为了方便地操作Redis,通常会封装一个Redis工具类,提高代码的复用性和易用性。本篇文章将深入探讨标题为"Redis工具类"的知识点,包括`valueOperations`和`RedisTemplate`的使用,以及它们在`Redis...

    java操作redis代码和redis工具类相关包资料

    在实际开发中,一个良好的Redis工具类通常会封装这些基础操作,提供更友好的API,例如批量操作、连接池管理、异常处理等。工具类的设计应考虑线程安全、资源释放以及错误处理,以确保代码的健壮性。 总的来说,这个...

    redis工具类

    redis工具类,整合springmvc,用来操作redis,获取数据的工具类,包括初始化和具体操作

    redis工具类-Java开发

    在 Java 开发中,Redis 的工具类通常用于简化与 Redis 服务器之间的交互过程。这些工具类提供了方便的方法来执行常见的 Redis 操作,例如设置键值对、获取数据、删除键等。通过使用这些工具类,开发者能够更加高效地...

    spring-redis工具类

    Spring整合Redis工具类,导入redis依赖,并使用工具类,不必使用RedisTemplate调用redis,并且采用java更常用的方式调用方法。

    springboot 集成封装redis工具类redisUtils和单元测试

    文章是redisUtils工具类的封装,和基于springboot环境的单元测试; 文中封装了redis的众多方法,希望对您有所帮助。

    Jedis工具类/redis工具类

    非常全面的一个java连接redis操作的工具类

    java操作redis工具类与配置文件,详细版

    创建Redis工具类** 接下来,编写一个`RedisUtil`工具类,用于管理Redis连接和提供常用操作方法。以下是一个简单的示例: ```java import redis.clients.jedis.Jedis; import java.util.Properties; public class ...

    最完整redis工具类_redis_Redist工具类_fewyit_redis工具类_

    Fewyit Redis工具类是为了简化Redis操作而设计的Java库,它封装了各种常见的Redis操作,使得在开发过程中能够更加便捷地与Redis进行交互。下面将详细介绍这个工具类的主要功能及其使用方法。 1. **连接管理** - `...

    redis工具类以及redis 连接池配置

    工具类中包括存放hash表键值对,键值对以map的方式储存,删除键值对,永久存放键值对,设置过期时间,需要的直接去gitHab上看https://github.com/1610220353/advancedGiants/tree/master/src/main

    Redis工具类,方便缓存读写

    在Java开发中,为了方便地与Redis交互,我们通常会编写或使用已有的Redis工具类。这个“Redis工具类”就是为了简化Redis的读写操作而设计的,它能够帮助开发者更高效、更便捷地在应用程序中集成Redis功能。 Redis...

    Redis工具类.rar

    Redis工具类是为了简化与Redis交互而创建的Java代码库,它可以极大地提高开发效率,帮助开发者快速实现对Redis的操作。以下是一些关于Redis工具类的重要知识点: 1. **连接管理**:Redis工具类通常会包含连接池的...

    Redis操作字符串工具类封装,Redis工具类封装

    在Java开发中,为了方便与Redis进行交互,通常会封装一个工具类,本文将详细介绍如何封装一个基于Redis操作字符串的工具类。 在`RedisPoolUtils`这个类中,我们可以看到它是对Jedis或Lettuce等Redis客户端的进一步...

    redis utils 工具类

    Redis Utils工具类是Java开发中常见的一种封装,用于简化与Redis数据库的交互操作。Redis是一种高性能的键值存储系统,广泛应用于缓存、消息队列、数据持久化等多个场景。在Java开发中,为了提高代码的可读性和复用...

    springboot StringRedisTemplate redis工具类

    redis工具类,继承StringRedisTemplate类,重写父类方法操作redis

    该文件是宝塔redis工具类

    "宝塔Redis工具类"指的是宝塔面板中用于管理和操作Redis数据库的一系列功能或代码模块。 Redis工具类通常包含以下关键知识点: 1. **连接管理**:工具类会提供连接Redis服务器的方法,包括建立、关闭和复用连接。...

Global site tag (gtag.js) - Google Analytics