Esempio

import java.sql.*;

public class ClassA {
public void method(){
Connection con = null;
Statement statement = null;
ResultSet result = null;
try {
con = DriverManager.getConnection("database url");
statement = con.createStatement();
result = statement.executeQuery ("query");
}
finally {
}
}
}


Soluzione
Tutte le risorse JDBC devono essere chiuse nel blocco finally(). Questa regola non controlla le connessioni JDBC aperte ma solo le relative risorse (Statement, ResultSet).

import java.sql.*;

public class ClassA {
public void method(){
Connection con = null;
Statement statement = null;
ResultSet result = null;
try {
con = DriverManager.getConnection("database url");
statement = con.createStatement();
result = statement.executeQuery ("query");
}
finally {
statement.close();
result.close();
}
}
}