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

Как работает аннотация Transactional в Spring

Аннотация @Transactional в Spring управляет транзакциями на уровне методов или классов. Она автоматически открывает транзакцию перед выполнением метода и коммитит/откатывает её после завершения.

Ключевые параметры:

  • propagation – поведение при вложенных транзакциях (например, REQUIRED, REQUIRES_NEW).
  • isolation – уровень изоляции (например, READ_COMMITTED).
  • readOnly – оптимизация для операций чтения.
  • rollbackFor/noRollbackFor – указание исключений для отката.

Пример:

java
@Service
public class UserService {
    @Transactional
    public void updateUser(User user) {
        // Бизнес-логика с транзакцией
    }
}

Если метод завершается успешно – транзакция коммитится, при исключении (по умолчанию RuntimeException) – откатывается. Работает через AOP-прокси.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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