Junior — Middle
114
Как може да се реализира механизъм за обратно изпълнение на транзакция в случай на възникване на проверяема изключение?
Компаниите бяха попитани
Отговор от AI
sobes.tech AI
В Java для реализации механизма отката транзакции при возникновении проверяемого исключения обычно используют аннотацию @Transactional с указанием параметра rollbackFor. По умолчанию транзакция откатывается только при непроверяемых исключениях (RuntimeException и Error), но можно явно указать, какие проверяемые исключения должны приводить к откату.
Пример:
@Transactional(rollbackFor = {MyCheckedException.class})
public void someMethod() throws MyCheckedException {
// бизнес-логика
if (someCondition) {
throw new MyCheckedException("Ошибка");
}
}
В этом примере, если MyCheckedException будет выброшено, транзакция откатится.