18-Redis - Jedis_JedisPool
package com.atguigu.redis.test; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; public class JedisPoolUtil { private static volatile JedisPool jedisPool = null; private JedisPoolUtil(){} public static JedisPool getJedisPoolInstance() { if(null == jedisPool) { synchronized (JedisPoolUtil.class) { if(null == jedisPool) { JedisPoolConfig poolConfig = new JedisPoolConfig(); poolConfig.setMaxActive(1000); poolConfig.setMaxIdle(32); poolConfig.setMaxWait(100*1000); poolConfig.setTestOnBorrow(true); jedisPool = new JedisPool(poolConfig,"127.0.0.1",6379); } } } return jedisPool; } public static void release(JedisPool jedisPool,Jedis jedis) { if(null != jedis) { jedisPool.returnResourceObject(jedis); } } }
package com.atguigu.redis.test; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; public class TestPool { public static void main(String[] args) { JedisPool jedisPool = JedisPoolUtil.getJedisPoolInstance(); JedisPool jedisPool2 = JedisPoolUtil.getJedisPoolInstance(); System.out.println(jedisPool == jedisPool2); Jedis jedis = null; try { jedis = jedisPool.getResource(); jedis.set("aa","bb"); } catch (Exception e) { e.printStackTrace(); }finally{ JedisPoolUtil.release(jedisPool, jedis); } } }