Ejemplo

public class ClassA {

private Connection connection;

public void makeConnection (DataSource ds) {

try {
connection = ds.getConnection();
} catch(SQLException sqle) {
//ejecute el manejo de excepciones
}
// realice alguna operación...

}
}



Solución
Para evitar pérdidas de recursos, asegúrese de que se invoque close() en cada java.sql.Connection. Nota: esta regla se aplica a las conexiones recibidas a través de un javax.sql.DataSource o un java.sql.DriverManager.


public class ClassA {

private Connection connection;

public void makeConnection (DataSource ds) {

try {
connection = ds.getConnection();
} catch(SQLException sqle) {
//ejecute el manejo de excepciones
}
// realice alguna operación...

try {
connection.close();
} catch(SQLException sqle) {
//ejecute el manejo de excepciones
}
}
}