2019独角兽企业重金招聘Python工程师标准>>>
package redis.clients.jedis;import redis.clients.util.FixedResourcePool;public class JedisPool extends FixedResourcePool {private String host;//IPprivate int port;//端口private int timeout;//超时时间public JedisPool(String host) {//设置IPthis.host = host;this.port = Protocol.DEFAULT_PORT;}public JedisPool(String host, int port) {//设置IP和端口this.host = host;this.port = port;}public JedisPool(String host, int port, int timeout) {//设置IP和端口,超时时间this.host = host;this.port = port;this.timeout = timeout;}@Overrideprotected Jedis createResource() {//一直连接,返回jedis并且已经连接上了...Jedis jedis = new Jedis(this.host, this.port, this.timeout);boolean done = false;while (!done) {try {jedis.connect();done = true;} catch (Exception e) {try {Thread.sleep(100);} catch (InterruptedException e1) {}}}return jedis;}@Overrideprotected void destroyResource(Jedis jedis) {//销毁资源if (jedis != null && jedis.isConnected()) {try {jedis.quit();jedis.disconnect();} catch (Exception e) {}}}@Overrideprotected boolean isResourceValid(Jedis jedis) {//资源是否有效try {return jedis.isConnected() && jedis.ping().equals("PONG");} catch (Exception ex) {return false;}}
}