Sobes.tech
Junior — Middle

Quando um método de serviço chama outro método anotado com @Transactional, é criada uma nova transação?

sobes.tech IA

Resposta da IA

Если метод с аннотацией @Transactional вызывается из другого метода того же класса напрямую (внутренний вызов), новая транзакция не создается, так как Spring AOP прокси не перехватывает внутренние вызовы.

Транзакция будет создана только если вызов происходит извне через прокси (например, из другого бина).

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