Согласно документация JAVA, Connection#commit()
может бросить SQLException
. Мой вопрос заключается в том, следует ли еще откатить откат в этом сценарии.
Например:
Connection con = null;
try {
// assume this method returns an opened connection with setAutoCommit(false)
con = createConnection();
// do DB stuff
con.commit();
} catch (SQLException e) {
if (con != null) {
// what if con.commit() failed, is this still necessary,
// will it hurt anything?
con.rollback();
}
} finally {
if (con != null) {
con.close();
}
}
Я фактически завернул вызов con.rollback() в другой метод, который игнорирует любые исключения, которые он выбрал, поэтому я думаю, что я в порядке. Я просто задавался вопросом, был ли это лучший способ справиться с ситуацией.