我正在将连接添加到arraylist中,并在需要使用它们时一个连接,在这里使用连接池中的连接,
ArrayList<Connection> al=new ArrayList<Connection>();
public Connection getconnection(){
if(al.size()>0)
{
try{
connection = al.get(0);
al.remove(connection);
}catch(Exception e){
out.print(e);
}
}else{
out.println("No Database connection is Available !");
}
return connection;
}
使用此连接后,我将其返回到连接池。
public void returnconnection(Connection con){
Connection c = con;
al.add(c);
out.println("Hi I'm Connection, I'm back! ");
}
在这里,我需要检查此连接是否为实时,然后添加到arraylist?
找到了解决此问题的解决方案,希望这可以有所帮助,
//checking connection is live or not
public boolean checkconnection(Connection conn){
Connection validconnection = conn;
try{
if(validconnection.isValid(1) && validconnection !=null)
return true;
}catch(Exception er){
out.println("n I'm not valid connection I can be null or Invalid, Please Check!");
}
return false;
}
//Adding Connection back to pool
public void returnconnection(Connection con) throws Exception{
Connection c = con;
boolean validreturncon=checkconnection(c);
if (validreturncon){
al.add(c);
out.println("Hi I'm Connection, I'm back! ");
}
else{
out.println("n Dead Connection, No need to put me into ArrayList! ");
}
}