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

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

Компании, где спрашивали
ИП Ганус Александр Андреевич

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

sobes.tech AI

Аннотация @Transactional в Java (Spring Framework) управляет транзакциями на уровне метода или класса. Основные параметры:

  • propagation — определяет поведение транзакции при вызове из другой транзакции (например, REQUIRED, REQUIRES_NEW).
  • 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() {
    // бизнес-логика
}