使用IT连接池后,如何检查连接是实时的

  • 本文关键字:连接 何检查 实时 IT 使用 java jdbc
  • 更新时间 :
  • 英文 :


我正在将连接添加到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! ");
    }
}

最新更新