Встречается на собеседованиях • сегодня
Что случится с методом если не обернуть его аннотацией Transactional
Метод без @Transactional выполнится вне контекста транзакции. Это значит:
- Каждый SQL-запрос будет выполняться в авто-коммит режиме (как отдельная транзакция)
- Невозможно откатить изменения при ошибке
- Нет управления уровнем изоляции
- Нет гарантий согласованности данных при нескольких операциях
Пример:
java
// Без @Transactional
public void transferMoney(Account from, Account to, BigDecimal amount) {
from.debit(amount); // авто-коммит
to.credit(amount); // авто-коммит
// Если здесь произойдет ошибка - деньги уже спишутся с from
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы