public boolean validateObject(PooledObject<PoolableConnection> p){
try{
validateLifeTime(p);
validateConnection(p.getObject());
return true;
}catch(Exception e){
return false;
}
}
private void validateLifetime(PooledObject<PoolableConnection> p) throws Exception{
if(maxConnLifetimeMillis > 0){
long lifetime = System.currentTimeMillis()-p.getCreateTime();
if(lifetime > maxConnLifetimeMillis){
throw new LifetimeExceededException();
}
}
}
public void validateConnection() throws SQLException{
if(conn.isClosed()){
throw new SQLException("validateConnection : connection closed");
}
conn.validate(_validationQuery,_validationQueryTimeout);
}
验证数据库连接有效性Druid
最新推荐文章于 2025-03-17 11:17:15 发布