共計 1289 個字符,預計需要花費 4 分鐘才能閱讀完成。
這篇文章給大家介紹如何進行 JedisPool.java 的分析,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
package redis.clients.jedis;
import redis.clients.util.FixedResourcePool;
public class JedisPool extends FixedResourcePool Jedis {
private String host;//IP
private int port;// 端口
private int timeout;// 超時時間
public JedisPool(String host) {// 設置 IP
this.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;
}
@Override
protected 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;
}
@Override
protected void destroyResource(Jedis jedis) {// 銷毀資源
if (jedis != null jedis.isConnected()) {
try {jedis.quit();
jedis.disconnect();
} catch (Exception e) { }
}
@Override
protected boolean isResourceValid(Jedis jedis) {// 資源是否有效
try { return jedis.isConnected() jedis.ping().equals( PONG} catch (Exception ex) {
return false;
}
}
關于如何進行 JedisPool.java 的分析就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
正文完