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

Что делает аннотация Transactional в Spring Data

Аннотация @Transactional в Spring Data управляет транзакциями на уровне метода или класса. Она гарантирует, что метод выполнится в рамках транзакции, обеспечивая ACID-свойства (атомарность, согласованность, изолированность, долговечность). Если метод завершается успешно — транзакция коммитится, при исключении — откатывается.

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

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

Пример:

java
@Service
public class UserService {
    @Transactional
    public void updateUser(User user) {
        // Логика обновления пользователя
    }
}

Если в методе updateUser() возникнет unchecked-исключение, транзакция автоматически откатится. Для checked-исключений нужно явно указать rollbackFor.

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

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

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

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