Работает ли
@Transactional при вызове метода внутри того же класса?Ответ: Нет. Если метод вызывается напрямую внутри того же класса, @Transactional не сработает.
Это происходит потому, что Spring управляет транзакциями через AOP-прокси, которые перехватывают только внешние вызовы. Внутренний вызов обходит прокси, поэтому транзакция не создаётся.
Решить проблему можно с помощью self-injection или вынести транзакционный метод в отдельный Spring-компонент.
tags: #собеседование
📱 Java Developer | 📲 MAX