java.sql.sqlexception下一个关闭连接

时间:2017-01-31 14:49:07

标签: java jdbc

error image

  

java.sql.SQLException:Closed Connection:next

     

在       oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)       在       oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)       在       oracle.jdbc.driver.OracleResultSetImpl.next(OracleResultSetImpl.java:181)       在       com.mchange.v2.c3p0.impl.NewProxyResultSet.next(NewProxyResultSet.java:2859)

代码

if (rs != null) {
    while (rs.next()) {
        resultset = Stmt.executeQuery();
        if (resultset.next()) {
            count += resultset.getLong(1);
            resultset.close();
            resultset = null;
        }
        Stmt.close();
        Stmt = null;
    }
}

1 个答案:

答案 0 :(得分:2)

错误java.sql.SQLException: Closed Connection: next表示resultSet在使用时已经关闭。避免关闭resultSet,直到确保下游代码不会使用它为止。

查看您的代码片段,看起来您正在使用while循环关闭Stmt实例,并将在循环的下一次迭代中使用它。这可能是您问题的另一个原因。在这种情况下,使用循环创建Stmt实例的新实例应该可以解决。