TGViewer
Java Developer Java Developer @java_tg · 14.8K subscribers
Post #3582 2.77K
❔ Вопрос с собеседования

Почему @Transactional не работает при вызове метода внутри того же класса?

Ответ: Spring активирует @Transactional через прокси, оборачивающие бины и перехватывающие внешние вызовы. Но если метод вызывается изнутри того же класса, прокси не используется — происходит прямой вызов, и аннотация не срабатывает.

Чтобы транзакция была активна, метод должен вызываться через прокси, например, путём внедрения собственного бина или получения его из ApplicationContext. Если требуется перехват внутренних вызовов, стоит использовать AspectJ — он работает на уровне байткода и не зависит от прокси-механизма.


tags: #собеседование

📱 Java Developer | Чат
  • ❤ 5
  • 👍 5
  • 🔥 2
More from @java_tg
  1. Sep 29, 2026👩‍💻 Ищем баги в Java-коде до запуска приложения Нашли open-source инструмент для статиче…
  2. Sep 28, 2026Post #4376
  3. Sep 28, 2026Как спроектировать ИИ-агента, который работает с корпоративными данными, соблюдает права д…
  4. Sep 28, 2026💻 Как быстро визуализировать SQL-схему Нашли инструмент, который умеет: 🫡 Строить ER-диа…
  5. Sep 27, 2026👩‍💻 Project Loom в 2026 году В статье разбирают актуальное состояние Loom: Virtual Threa…
  6. Sep 26, 2026Post #4372
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →