Вопрос проверяет понимание того, когда транзакции в Spring действительно работают и как правильно выстраивать границы сервисов.
Короткий ответ
При вызове метода между разными бинами вызов проходит через прокси. В этом случае @Transactional отрабатывает корректно. Spring создаёт или присоединяет транзакцию в зависимости от настроек propagation. Именно так транзакции и должны использоваться в типовой архитектуре. Поэтому транзакционные методы обычно выносят в отдельные сервисы.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.