Javadoc dice para .close()
del PreparedStatement
dice que ..Relación entre "cerrar" para PreparedStatement y Connection?
lanzamientos base de datos de este objeto Statement y recursos JDBC de inmediato en lugar de esperar que esto suceda cuando se cierra automáticamente. En general, es una buena práctica liberar los recursos tan pronto como haya terminado con ellos para evitar el bloqueo de los recursos de la base de datos .
Llamar al método cerca de un objeto Statement que ya está cerrado no tiene ningún efecto.
Nota: Cuando se cierra un objeto Statement, también se cierra su objeto ResultSet actual, si existe alguno.
Consideremos el siguiente escenario
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();
}
En este ejemplo, se pstmt.close()
también cerca con
?
No. Cerrar una declaración * no * cerrará la conexión (ya que puede haber * muchas * declaraciones para una sola conexión). La conexión debe * también * considerarse un recurso administrado. –
Siempre puede probar esto con "con.isClosed()" http://docs.oracle.com/javase/6/docs/api/java/sql/Connection.html –