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

Для чего нужна аннотация @Transactional

Аннотация @Transactional в Spring используется для управления транзакциями на уровне методов или классов. Она автоматически открывает транзакцию перед выполнением метода и фиксирует (commit) или откатывает (rollback) её в зависимости от результата.

Ключевые особенности:

  • Упрощает работу с транзакциями, избавляя от ручного управления
  • По умолчанию создаёт новую транзакцию, если её нет
  • Поддерживает propagation (например, REQUIRED, REQUIRES_NEW)
  • Автоматически откатывает при необработанных исключениях (RuntimeException)

Пример:

java
@Service
public class UserService {
    @Transactional
    public void transferMoney(Account from, Account to, BigDecimal amount) {
        from.withdraw(amount);
        to.deposit(amount);
        // Если что-то пойдёт не так - оба изменения откатятся
    }
}
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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