Sobes.tech
Junior — Middle

Alkalmazható-e az @Transactional annotáció privát módszerekhez Java-szolgáltatásokban?

sobes.tech MI

Válasz az MI-től

A @Transactional annotáció Springben proxy-kon keresztül működik, amelyek a bean-ek nyilvános metódusai körül jönnek létre. A proxy-k elfogják a hívásokat és kezelik a tranzakciókat. Ha egy metódus privát, akkor a hívás közvetlenül a osztályon belül történik, megkerülve a proxy-t, és az annotáció nem fog működni.

Ezért értelmetlen a @Transactional alkalmazása privát metódusokra — a tranzakció nem fog megnyílni. Ajánlott nyilvános metódusokat annotálni, amelyek tranzakcionálisak kell legyenek.