现在有个很疑惑的问题和大家请教下,通过weblogic9或10.3配置数据库连接池,在建立连接并且关闭之后,通过isClose命令判断连接是否关闭,返回值是true,那应该表示连接已经关闭,但是weblogic控制台上的当前连接数量(current capacity)并没有减少,已经将weblogic超时时间(Inactive Connection Timeout和Connection Reserve Timeout)改为30秒了,但还是不管用,显示的当前连接数依然不变,想请教下这是什么情况?是weblogic机制的问题,还是我们代码编写有问题,下面贴出代码,请高手帮忙分析下原因,非常感谢!
每次建立及关闭连接都用以下代码:
public Connection getConnection() {
Connection conn = null;
try {
/**
 * 
 * weblogic 连接池
 */
InitialContext ctx = new InitialContext();
DataSource ds = (DataSource) ctx.lookup("testdb");
conn = ds.getConnection();
}
catch (Exception ex) {
System.out.println("BISConnection.getConnection() Error : " + ex.getMessage());
ex.printStackTrace();
}
return conn;
}
public void freeConnection(Connection conn) {
try {
conn.close();
}
catch (Exception e) {
System.out.println("freeConnection() Error : " + e.getMessage());
}
}