私たちのコード ベースで findbugs を実行したところ、まだクローズする必要があるステートメントがあと 2 つあることが指摘されました。コードのこのセクションでは、次を実行します。
preparedStatement = connection.prepareStatement(query);
3 つの異なるクエリに対して、preparedStatement を再利用します。finally ブロックでは、リソースを閉じます。
finally{
try{
if (resultSet != null)
resultSet.close();
} catch (Exception e) {
exceptionHandler.ignore(e);
}
try {
if (preparedStatement != null)
preparedStatement.close();
} catch(Exception e) {
exceptionHandler.ignore(e);
}
次の connection.prepareStatement(query) の前にステートメントを閉じる必要があります。それとも、このfindbugsは慎重ですか?