Sobes.tech
Назад к вопросам
Junior — Middle
65

Каким образом можно реализовать механизм отката транзакции в случае возникновения проверяемого исключения?

Компании, где спрашивали
СБЕРСБЕР

Ответ от нейросети

sobes.tech AI

В Java для реализации механизма отката транзакции при возникновении проверяемого исключения обычно используют аннотацию @Transactional с указанием параметра rollbackFor. По умолчанию транзакция откатывается только при непроверяемых исключениях (RuntimeException и Error), но можно явно указать, какие проверяемые исключения должны приводить к откату.

Пример:

@Transactional(rollbackFor = {MyCheckedException.class})
public void someMethod() throws MyCheckedException {
    // бизнес-логика
    if (someCondition) {
        throw new MyCheckedException("Ошибка");
    }
}

В этом примере, если MyCheckedException будет выброшено, транзакция откатится.