Conexion a BD en servlets

alberto
13 de Octubre del 2004
Hola, queria saber donde es mejor hacer la conexion a la base de datos en un servlet, en mejor hacerlo en la funcion que va usar la base de datos y luego desconectarse? o es mejor hacerlo en el metodo init() o service() y luego desconectarse en el metodo destroy()?

Muchas gracias de antemano.

Nacho
13 de Octubre del 2004
La opcion es la primera, la otra es muy desaconsejable.
Lo mejor de todo seria hacerte una clase (no un servlet) que se encargue de toda la gestion de la conexion a la base de datos, por ejemplo que tenga un getConexion y despues cerrar esa conexion desde el servlet, por ejemplo.
Lo de cerrar la conexion desde el destroy no debes hacerlo porque ese metodo solo se ejecuta cuando el servlet se desinstancia, lo que podria provocar que todo el tiempo que este el servlet instanciado (que podria ser mucho) habra conexiones abiertas y sin funcionar a la base de datos.
Mi consejo es que solo habras la conexion cuando vayas a utilizarla y la cierres en cuanto tengas el ResultSet, ademas asegurate de cerrarla bien con comprobaciones ya que mantener conexiones abiertas sin utilizar durante mucho tiempo implicara un rendimiento malo de tu aplicacion.
Si tienes mas dudas preguntame.