首先創建線程池:
public voidRedisPool() {
if(Const.jedisPoolCommon==null){
JedisPoolConfig config = new JedisPoolConfig();
//最大連接數, 默認8個
config.setMaxTotal(redisPoolMaxActive);
//最大空閒連接數, 默認8個
config.setMaxIdle(redisPoolMaxIdle);
//獲取連接時的最大等待毫秒數
config.setMaxWaitMillis(100000);
//最小空閒連接數, 默認0
config.setMinIdle(redisPoolMinIdle);
//連接耗盡時是否阻塞, false報異常,ture阻塞直到超時, 默認true
config.setBlockWhenExhausted(true);
config.setTestOnBorrow(TEST_ON_BORROW);
Const.jedisPoolCommon = new JedisPool(config,host,port,timeout,password);
}
}
工具使用池:
/**
- 列表添加爲例
- @param k
- @param v
*/
public void rightPush(String k,String v){
Jedis jedis = null;
try{
jedis=Const.jedisPoolCommon.getResource();
jedis.select(commdbIndex);
jedis.rpush(k,v);
}catch (Exception ex){
logger.error("rightPush異常"+ex);
}finally {
if(jedis!=null){//關閉回收到線程池
jedis.close();
}
}
}