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

Какие знаешь аргументы @Transactional

@Transactional в Spring управляет транзакциями. Основные аргументы:

  1. propagation – определяет поведение при наличии существующей транзакции:
    • REQUIRED (по умолчанию) – использует текущую или создает новую.
    • REQUIRES_NEW – всегда создает новую.
    • SUPPORTS, NOT_SUPPORTED, NEVER, MANDATORY, NESTED.
  1. isolation – уровень изоляции (DEFAULT, READ_UNCOMMITTED, READ_COMMITTED, REPEATABLE_READ, SERIALIZABLE).

  2. timeout – таймаут транзакции в секундах (по умолчанию -1, без ограничений).

  3. readOnlytrue для операций только чтения (оптимизация).

  4. rollbackFor / noRollbackFor – классы исключений, которые вызывают / не вызывают откат.

Пример:

java
@Transactional(
    propagation = Propagation.REQUIRES_NEW,
    isolation = Isolation.READ_COMMITTED,
    timeout = 30,
    rollbackFor = {SQLException.class}
)
public void updateData() { ... }
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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