Согласно документации 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 () в другой метод, который игнорирует любые исключения, вызванные им, поэтому я думаю, что я в порядке. Мне просто интересно, если это лучший способ справиться с вещами.