JedisPool工具类

对于redis没有设置密码情况,直接去掉类中的密码即可
package com.practice.utils;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

import java.util.ResourceBundle;

/**

  • 〈说明〉
  • 〈〉
  • @author lenovo
  • @since 1.0.0
    */
    public class JedisPoolUtils {
    /** 定义最大空闲数 */
    private static int MAX_IDLE;

    /** 定义最小空闲数 */
    private static int MIN_IDLE;

    /** 定义最大连接数 */
    private static int MAX_TOTAL;

    /** 定义远程IP地址 */
    private static String URL;

    /** 定义连接端口号 */
    private static int PORT;

    /** 定义redis客户端登录密码 */
    private static String PASSWORD;

    /** 定义连接超时时间 */
    private static int TIME_OUT;

    /** 创建JedisPool对象,定义为空,等待初始化 */
    private static JedisPool pool = null;

    /**
    • 静态代码块
    • 初始化连接池
      */
      static {
      JedisPoolConfig poolConfig = init();
      //初始化连接池对象
      pool = new JedisPool(poolConfig, URL, PORT, TIME_OUT, PASSWORD);
      }
    /**
    • 静态方法获取Jedis对象
    • 获取前进行非空判断
    • pool如果为空,则返回null
    • @return
      */
      public synchronized static Jedis getJedis() {
      if (pool != null) {
      return pool.getResource();
      }
      return null;
      }
    /**
    • 回收Jedis
    • 回收前进行非空判断
    • final Jedis jedis确保传进来的Jedis对象与returnJedis(Jedis jedis)方法内Jedis对象一致
    • @param jedis
    • @throws Exception
      */
      public static void returnJedis(final Jedis jedis) {
      if (jedis != null) {
      pool.returnResourceObject(jedis);
      }
      }
    /**
    • 静态方法init()用于初始化配置参数
    • 私有方法置于最后
    • @return
      */
      private static JedisPoolConfig init() {
      //读取并加载初始化参数
      ResourceBundle bundle = ResourceBundle.getBundle("redis");
      MAX_IDLE = Integer.valueOf(bundle.getObject("redis.maxIdle").toString());
      MIN_IDLE = Integer.valueOf(bundle.getObject("redis.minIdle").toString());
      MAX_TOTAL = Integer.valueOf(bundle.getObject("redis.maxTotal").toString());
      URL = bundle.getString("redis.url");
      PORT = Integer.valueOf(bundle.getObject("redis.port").toString());
      PASSWORD = bundle.getString("redis.password");
      TIME_OUT = Integer.valueOf(bundle.getObject("redis.timeOut").toString());

      //创建连接池配置对象
      JedisPoolConfig poolConfig = new JedisPoolConfig();
      poolConfig.setMaxIdle(MAX_IDLE);
      poolConfig.setMinIdle(MIN_IDLE);
      poolConfig.setMaxTotal(MAX_TOTAL);
      return poolConfig;
      }
      }

转载于:https://www.cnblogs.com/jay8576/p/9550122.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值