Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

[Duda] Metodo guardar falta cerrar conexion o no afecta en nada?

Hola me habia faltado cerrar algunas conexiones y vi que el tutor tambien dejo el metodo guardar sin cerrar conexion, eso puede afectar en algo? y si afecta en algo que seria?

Metodo tutor sin cerrar conexion Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

Metodo gardar cerrando conexion

public void guardar(Map<String, String> producto) throws SQLException {
        ConnectionFactory factory = new ConnectionFactory();
        Connection con = factory.recuperaConexion();
        //Connection con = new ConnectionFactory().recuperaConexion();

        PreparedStatement statement = con.prepareStatement("INSERT INTO PRODUCTO "
                + "(nombre, descripcion, cantidad)"
                + " VALUES (?, ?, ?)",
                Statement.RETURN_GENERATED_KEYS);
        statement.setString(1, producto.get("NOMBRE"));
        statement.setString(2, producto.get("DESCRIPCION"));
        statement.setInt(3, Integer.valueOf(producto.get("CANTIDAD")));

        statement.execute();

        ResultSet resultSet = statement.getGeneratedKeys();

        con.close();

        while(resultSet.next()) {
            System.out.println(String.format(
                    "Fue insertado el producto de ID %d",
                    resultSet.getInt(1)));
        }
    }

Gracias, saudos.

1 respuesta

Hola Esteban, espero que estés bien.

Gracias por compartir con nosotros. Me alegra que estés disfrutando del curso.

No cerrar una conexión puede interferir con el rendimiento de la aplicación de modo que sobrecargue la memoria con objetos abiertos sin necesidad. Además, puede ocurrir el error de no devolver la conexión (conexión vacía) mientras el programa espera una.

Es una buena práctica implementar solo una conexión para solicitud y delegar al controlador la tarea de abrir y cerrar una conexión.

Espero haber ayudado, pero si la duda persiste, por favor devuelve ;) Un saludo.

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios.