Встречается на собеседованиях • сегодня

В чем выражается Rollback

Rollback — это откат изменений в транзакции при возникновении ошибки или явном вызове. В Java это реализуется через Connection.rollback(), если транзакция не завершилась успешно (commit() не вызван).

Пример с JDBC:

java
Connection conn = dataSource.getConnection();
try {
    conn.setAutoCommit(false);
    // Выполняем операции (INSERT, UPDATE и т.д.)
    conn.commit();
} catch (SQLException e) {
    conn.rollback(); // Откатываем изменения при ошибке
} finally {
    conn.setAutoCommit(true);
    conn.close();
}

Нюансы:

  • Rollback возможен только в рамках одной транзакции.
  • В Spring @Transactional автоматически откатывает при unchecked-исключениях (можно настроить через rollbackFor).
  • Некоторые операции (например, DDL в некоторых СУБД) не поддерживают откат.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы