Sobes.tech
Junior — Middle

Kan de annotatie @Transactional worden toegepast op privé-methoden in Java-services?

sobes.tech AI

Antwoord van AI

De @Transactional-annotatie in Spring werkt via proxies die rond de publieke methods van beans worden gemaakt. De proxies onderscheppen de aanroepen en beheren transacties. Als een methode privé is, wordt de aanroep direct binnen de klasse gedaan, zonder de proxy, en zal de annotatie niet werken.

Het heeft dus geen zin om @Transactional op privé-methoden toe te passen — de transactie wordt niet geopend. Het wordt aanbevolen om publieke methods die transactioneel moeten zijn, te annoteren.