Buenos días compañeros e instructores.
Con respecto al pool en esta clase que estamos trabajando con el estándar DAO. Tengo la siguiente duda: ¿No tenemos necesidad de cerrar la conexión? Puesto que en el siguiente código cuando pasó la Conexión con como parámetro me lanza una excepción y no me ejecuta los comandos. Pero así como está me funciona.
public class ProductoDAO {
final private Connection con;
public ProductoDAO(Connection con) {
this.con = con;
}
public void guardar(Producto producto) {
try{
final PreparedStatement statement = con.prepareStatement("INSERT INTO PRODUCTO(nombre,descripcion,cantidad) "
+ "VALUES(?,?,?)", Statement.RETURN_GENERATED_KEYS);
try(statement){
ejecutarRegistro(producto, statement);
}
}catch(SQLException e) {
throw new RuntimeException(e);
}
}
}
Tengo entendido que el try with resources cuando le paso el parametro al try es para que me cierra la conexión.
Muchas gracias de antemano.