Sobes.tech
Назад к вопросам
Senior
10

Назови параметры аннотации @Transactional

Компании, где спрашивали
Альфа КапиталАльфа Капитал

Ответ от нейросети

sobes.tech AI

Аннотация @Transactional в Spring используется для управления транзакциями и имеет несколько ключевых параметров:

  • propagation — определяет поведение транзакции при вызове метода, например, REQUIRED, REQUIRES_NEW, SUPPORTS и др.
  • isolation — уровень изоляции транзакции, например, READ_COMMITTED, SERIALIZABLE.
  • timeout — максимальное время выполнения транзакции в секундах.
  • readOnly — указывает, что транзакция только для чтения, что может оптимизировать работу с БД.
  • rollbackFor и noRollbackFor — классы исключений, при которых транзакция должна или не должна откатываться.

Пример использования:

@Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.READ_COMMITTED, timeout = 30, readOnly = false, rollbackFor = Exception.class)
public void updateData() {
    // бизнес-логика
}