一、概述
Jedis本身是线程不安全的,并且频繁的创建和销毁连接会有性能损耗,因此推荐使用Jedis连接池代替Jedis的直连方式。
二、创建连接池
public class JedisConnectionFactory {
    private static final JedisPool jedisPool;
    static {
        //配置连接池
        JedisPoolConfig poolConfig = new JedisPoolConfig();
        //配置最大连接
        poolConfig.setMaxTotal(8);
        //配置最大空闲连接
        poolConfig.setMaxIdle(8);
        //配置最小空闲连接
        poolConfig.setMinIdle(0);
        //配置最大等待时间
        poolConfig.setMaxWaitMillis(1000);
        //创建连接池对象
        jedisPool = new JedisPool(poolConfig,"192.168.21.131",6379,1000,"123321");
    }
    public static Jedis getJedis(){
        return jedisPool.getResource();
    }
}
 
静态代码块:随着类的加载而执行,而且只执行一次。执行优先级高于非静态的初始化块,它会在类初始化的时候执行一次,执行完成便销毁,它仅能初始化类变量,即static修饰的数据成员。
三、使用连接池
@BeforeEach
void setUp(){
    //建立连接
    //jedis = new Jedis("192.168.21.131",6379);
    jedis = JedisConnectionFactory.getJedis();
    //设置密码
    jedis.auth("123321");
    //选择库
    jedis.select(0);
}










