Jedis连接池的使用(eclipse maven项目)
maven pom.xml依赖
<dependencies>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
</dependencies>
Jedis连接池工具类
package something1;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
/*
* 双重检查单例模式创建Jedis连接池
*
* */
public class JedisPoolUtil {
private static volatile JedisPool jedisPool=null;
private JedisPoolUtil() {}
public static JedisPool getInstance() {
if(null== jedisPool) {
synchronized(JedisPoolUtil.class){
if(null== jedisPool) {
JedisPoolConfig poolConfig= new JedisPoolConfig(); //jedispool初始值配置
poolConfig.setMaxTotal(900); //池中最大连接数
poolConfig.setMaxIdle(30); //最大空闲数
poolConfig.setMaxWaitMillis(100*1000); //最大等待时间,等待100秒超时会抛出异常
//更多配置自行百度
jedisPool=new JedisPool(poolConfig, "127.0.0.1", 6379, 10000, "12345678"); //"12345678"是redis密码,没配置就不写
}
}
}
return jedisPool;
}
}
Jedis连接池使用类
package something1;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
public class Redistest {
public static void main(String[] args) {
Jedis jedis=null;
JedisPool jedisPool=JedisPoolUtil.getInstance();
try {
jedis=jedisPool.getResource();
jedis.set("test3", "value3");
System.out.println(jedis.get("test3"));
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}finally {
if(jedis!= null) {
jedis.close();
}
}
}
}
执行结果: