Saltar la navegación

5.9.- Captura de errores y liberación de recursos.

Liberación de recursos

Debemos tener en cuenta siempre que las conexiones con una base de datos consumen muchos recursos en el sistema gestor, y por lo tanto en el sistema informático en general. Por ello, conviene cerrarlas con el método  close (de la clase Connection) siempre que vayan a dejar de ser utilizadas , en lugar de esperar a que el garbage collector de Java las elimine.

También conviene cerrar la ejecución de procedimientos almacenados  CallableStatement,    las consultas (Statement y PreparedStatement) y los resultados (ResultSet) para liberar los recursos.

Gestión de errores.

El manejo de excepciones permite manejar condiciones excepcionales tales como errores definidos por el programa de una manera controlada.

Cuando se produce una condición de excepción, se lanza una excepción. La ejecución del programa actual se detiene y el control se redirige a la cláusula de captura (catch) más cercana. Si no existe, la ejecución del programa finaliza.

El manejo de excepciones de JDBC es muy similar al manejo de excepciones de Java, pero para JDBC, la excepción más común con la que tratará es java.sql.SQLException.

Se puede producir una SQLException tanto en el controlador como en la base de datos. Cuando se produce una excepción de este tipo, un objeto de tipo SQLException se pasará a la cláusula catch.

El objeto SQLException pasado tiene los siguientes métodos disponibles para recuperar información adicional sobre la excepción:

getErrorCode ()
getMessage ()
printStackTrace ()
etc.