tomcat连接池问题,关闭所有的tomcat连接池链接,为什么还有数据库链接存在。
tomcat连接池配置
<Context path="/UltraProcess" docBase="C:\javaworkplace\Proto\UltraProcess" debug="0" reloadable="true">
<Resource 
name="jdbc/duty"
auth="Container" 
type="javax.sql.DataSource"
password="duty"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="10"
maxWait="5000"
username="duty"
url="jdbc:oracle:thin:@127.0.0.1:1521:OMS"
maxActive="0"/>
<Resource 
name="jdbc/remedy"
auth="Container" 
type="javax.sql.DataSource"
password="AR#ADMIN#"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="10"
maxWait="5000"
username="ARADMIN"
url="jdbc:oracle:thin:@127.0.0.1:1521:OMS"
maxActive="0"/></Context><Context path="/UltraProcess1" docBase="C:\javaworkplace\Message\UltraProcess" debug="0" reloadable="true">
<Resource 
name="jdbc/duty"
auth="Container" 
type="javax.sql.DataSource"
password="duty"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="10"
maxWait="5000"
username="duty"
url="jdbc:oracle:thin:@127.0.0.1:1521:OMS"
maxActive="0"/>
<Resource 
name="jdbc/remedy"
auth="Container" 
type="javax.sql.DataSource"
password="AR#ADMIN#"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="10"
maxWait="5000"
username="ARADMIN"
url="jdbc:oracle:thin:@127.0.0.1:1521:OMS"
maxActive="0"/>
</Context>
链接池的关闭代码public static void closeResultSet(ResultSet rs){
if (rs == null) 
return;
 

Statement stmt = null; try {
stmt = rs.getStatement();
} catch (Exception e) {
throw new RuntimeException("关闭游标失败!!");
} finally {
try {
rs.close();
if (stmt != null) {
stmt.close();
}
} catch (Exception e) {
}
}
}

}
那位大虾帮我看看啊

解决方案 »

  1.   

    Statement stmt = null; try {
    stmt = rs.getStatement();
    } catch (Exception e) {
    不是这样的!!!
    你这个代码,编译应该都不能通过的!!!
    你有编译了吗???真是的!!!
    主要的代码,应该是这样的:
    Connection con=DataSource.getConnection();
    Statemetn stmt=con.createStatement();
    ResultSet rs=stmt.executeQuery(sql);
      

  2.   

    要close rs,要close stmt,要close con。
    先后顺序也不要搞乱了。
      

  3.   

    yeah920   你说的我就是没有关闭rs啊 
    但是这种关闭方法也可以啊 
    我就是用这种方法关闭了很多了
      

  4.   

    只关闭了Result和Statement,没有关闭Connection,数据库连接当然还会存在
      

  5.   

    rs.close();
    stmt.close();
    conn.close();
      

  6.   

    rs.close();
    stmt.close();
    conn.close();
    按先后顺序关闭啊,
    你关闭好多了啊,后台运行的,你怎么知道呢