[Redis-客户端] Jedis直连与连接池的使用

1. Maven依赖

     
            redis.clients
            jedis
            3.7.0
        

2. Jedis建立连接

直连代码 : 

public class JedisTest {

    private Jedis jedis;

    @Before
    public void steUp() {
        //建立连接
        jedis = new Jedis("127.0.0.1", 6379);
        //选择库
        jedis.select(0);
    }

    @Test
    public void test() {
        //存储数据
        String set = jedis.set("name", "张三");
        System.out.println(set);
        //获取数据
        String name = jedis.get("name");
        System.out.println("name: >> " + name);
    }

    @AfterEach
    public void testDown() {
        if (jedis != null) {
            jedis.close();
        }
    }
}

 输出结果 : 

[Redis-客户端] Jedis直连与连接池的使用_第1张图片

 [Redis-客户端] Jedis直连与连接池的使用_第2张图片


3. Jedis采用连接池建立连接

问 : 为什么采用Jedis连接池呢? 
答 : 因为Jedis本身是线程不安全的, 如果频繁的建立连接和销毁连接, 会产生性能损耗, 因此使用连接池代替了直接连接的方式

连接池代码 : 

public class JedisConnectionFactory {

   //jedis官方连接池对象
   private static JedisPool JEDIS_POOL ;

   static {
      //配置连接池
      JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
      //设置最大连接数为8
      jedisPoolConfig.setMaxTotal(8);
      //设置最大空闲连接(即使没有连接也会预备8个连接数)
      jedisPoolConfig.setMaxIdle(8);
      //最小空闲连接
      jedisPoolConfig.setMinIdle(0);
      //最大等待时间
      jedisPoolConfig.setMaxWaitMillis(1000);

      //创建连接池对象
       JEDIS_POOL = new JedisPool(jedisPoolConfig, "127.0.0.1", 6379, 1000);

   }

   public static Jedis getJedis(){
      return JEDIS_POOL.getResource();
   }

}

修改建立连接的方式为连接池 :

public class JedisTest {

    private Jedis jedis;

    @Before
    public void steUp() {
        //建立连接
//        jedis = new Jedis("127.0.0.1", 6379);
        jedis = JedisConnectionFactory.getJedis();
        //选择库
        jedis.select(0);
    }

    @Test
    public void test() {
        //存储数据
        String set = jedis.set("name", "张三");
        System.out.println(set);
        //获取数据
        String name = jedis.get("name");
        System.out.println("name: >> " + name);
    }

    @AfterEach
    public void testDown() {
        if (jedis != null) {
            jedis.close();
        }
    }
}

  输出结果 : 

[Redis-客户端] Jedis直连与连接池的使用_第3张图片

 [Redis-客户端] Jedis直连与连接池的使用_第4张图片

4. 最后总结

Jedis使用的基本步骤:

1. 引入依赖

2. 创建Jedis对象,建立连接

3. 使用Jedis,方法名与Redis命令一致

4. 最后一步释放资源

5. 完整项目地址 

链接: https://pan.baidu.com/s/1hZt8mRwNn8yyWt5qNoR1oA 

提取码: poth

你可能感兴趣的:(Redis,java,redis,客户端,jedis,连接池)