Sobes.tech
Junior — Middle

Je možné použiť anotáciu @Transactional na súkromné metódy v Java službách?

sobes.tech AI

Odpoveď od AI

Anotácia @Transactional v Springu funguje cez proxy, ktoré sú vytvorené okolo verejných metód beanov. Proxy zachytávajú volania a spravujú transakcie. Ak je metóda súkromná, volanie prebieha priamo vnútri triedy, obchádza proxy, a anotácia nebude fungovať.

Preto nemá zmysel aplikovať @Transactional na súkromné metódy — transakcia nebude otvorená. Odporúča sa anotovať verejné metódy, ktoré majú byť transakčné.