Javadoc 说 for .close()
of thePreparedStatement
说它..
立即释放此 Statement 对象的数据库和 JDBC 资源,而不是等待它自动关闭时发生。通常最好在使用完资源后立即释放资源,以避免占用数据库资源。
对已关闭的 Statement 对象调用方法 close 无效。
注意:当 Statement 对象关闭时,其当前的 ResultSet 对象(如果存在)也将关闭。
考虑以下场景
MyConnector databaseConnector = DBManager.instance().getConnector();
Connection con = databaseConnector.getConnection(); // returns java.sql.Connection
PreparedStatement pstmt = null;
try {
pstmt = con.prepareStatement("some query");
...
} finally {
if (pstmt != null)
pstmt.close();
}
在这个例子中,pstmt.close()
也将关闭con
?