Redis连接配置模块类

package com.***

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

public class JedisConnectUtil {
    private final static String IP_ADDR = "192.168.1.000";//RedisIP地址
    private final static int PORT = 6379;//端口
    private static final int TIMEOUT = 300;//超时
//    private final static String AUTH = "";
    
    //连接池config配置信息
    private final static int MAX_IDLE = 5000;
    private final static int MAX_WAIT = 1000000;
    private final static int MAX_TOTAL = 10240;
    private final static boolean TEST_ON_BORROW = true;
    private final static boolean TEST_ON_RETURE = true;
    private final static int MAX_INDEX = 16;
    private static JedisPool[] jedisPool = null;
    
    static{
        // 构建连接池配置信息
        JedisPoolConfig config = new JedisPoolConfig();
        config.setMaxIdle(MAX_IDLE);
        config.setMaxWaitMillis(MAX_WAIT);
        // 设置最大连接数
        config.setMaxTotal(MAX_TOTAL);
        config.setTestOnBorrow(TEST_ON_BORROW);
        config.setTestOnReturn(TEST_ON_RETURE);
        // 根据配置实例化jedis池
        jedisPool = new JedisPool[MAX_INDEX];
        for (int i = 0; i < jedisPool.length; i++) {
            jedisPool[i] = new JedisPool(config, IP_ADDR, PORT, TIMEOUT, null, i);
        }
    }
    
    /**
     * 【**系统】链接redis数据库【内网db*】
     * @return
     */
    public static Jedis getJedisDB(){
        return getJedisDB(*);
    }
    /**
     * 使用jedis 链接【**项目】redis数据库【内网db0】
     * @return
     */
    public static Jedis getJedisDB0(){
        return getJedisDB(0);
    }
    
    /**
     * 选择连接Redis的一个库[共16个:db0~db15]
     * @param index 库的索引
     * @return
     */
    public synchronized static Jedis getJedisDB(int index){
        if (jedisPool != null){
            return jedisPool[index].getResource();
        }
        return null;
    }
    
    /**
     * 关闭jedis连接(jedis操作完之后需要关闭)
     * @param jedis
     */
    public static void close(final Jedis jedis){
        if (jedis != null) {
            jedis.close();
        }
    }
}
 

发布了27 篇原创文章 · 获赞 4 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/rocrunwang/article/details/81198833