Sobes.tech
Назад к вопросам
Junior — Middle
59

Вы выполняли операции с управлением транзакциями с помощью аннотации @Transactional?

Компании, где спрашивали
ОТП БанкОТП Банк

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

sobes.tech AI

Аннотация @Transactional в Java используется для управления транзакциями на уровне метода или класса. Она позволяет автоматически начать транзакцию при входе в метод и зафиксировать (commit) или откатить (rollback) её в зависимости от результата выполнения.

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

@Service
public class UserService {

    @Transactional
    public void createUser(User user) {
        userRepository.save(user);
        // если здесь возникнет исключение, транзакция откатится
    }
}

Основные моменты:

  • Транзакция начинается при вызове метода с @Transactional.
  • Если метод завершается без исключений, транзакция фиксируется.
  • При возникновении непроверяемого исключения (RuntimeException) транзакция откатывается.
  • Можно настроить поведение через параметры аннотации (например, rollbackFor).

Таким образом, @Transactional упрощает управление транзакциями, обеспечивая целостность данных без необходимости писать явный код для начала и завершения транзакций.