правильно ли я понимаю, что если первое закрытие выбросит ошибку, то остальные даже и не вызовутся? подскажите как ПРАВИЛЬНО исправить, а главное почему именно так!
private void closeStatement() throws DaoException, SQLException {
try {
getByIdStmt.close();
} catch (Exception e) {
throw new DaoException("Error! getByIdStmt is not closed");
}
try {
updateStmt.close();
} catch (Exception e) {
throw new DaoException("Error! updateStmt is not closed");
}
try {
addStmt.close();
} catch (Exception e) {
throw new DaoException("Error! addStmt is not closed");
}
try {
deleteStmt.close();
} catch (Exception e) {
throw new DaoException("Error! deleteStmt is not closed");
}
System.out.println("Statement close");
}
Ответ
Возможно, так:
private void closeStatement() throws DaoException, SQLException {
ArrayList
Поочерёдно пытаемся закрыть все statement, неудачи собираем. Потом выбрасываем общее для всех ошибок исключение.
Комментариев нет:
Отправить комментарий