在执行executeQuery之后,然后关闭连接池,此时ResultSet也会关闭(可能跟垃圾回收有关吧)
之前是用一个统一的方法执行select 语句
public static ResultSet exeQuerySql(String strSql) throws SQLException
{
Connection conn=null;
ResultSet rs=null;
PreparedStatement st=null;
try {
conn =DBUnitl.open();
st=conn.prepareStatement(strSql);
rs= st.executeQuery();
return rs;
} catch (Exception e) {
e.printStackTrace();
return rs;
}
finally
{
DBUnitl.release(conn,st, null);//释放链接、关闭线程池
}
}
,然而,在之后使用返回的ResultSet时,提示ResultSet被关闭了,无奈被迫不在使用统一的sql语句执行方法,改为在每一个daoimpl里执行conn、rs、st,在程序的最后释放链接、关闭连接池。