Sobes.tech
Junior — Middle

Como pode implementar um mecanismo de rollback de transações em caso de ocorrência de uma exceção verificável?

sobes.tech IA

Resposta da IA

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

Пример:

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

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