Qu'est-ce que « TM » en Java TM ? Transaction Manager (JTA)
En Java EE / Jakarta EE, TM = Transaction Manager — le composant cœur de l'API Transaction Java (JTA).
Ce qu'il fait
- Coordonne transactions distribuées sur multiples ressources (bases de données, files JMS, connecteurs JCA).
- Applique propriétés ACID : Atomicité, Cohérence, Isolation, Durabilité.
- Gère cycle vie transaction :
begin(),commit(),rollback(). - Effectue validation en deux phases (2PC) pour ressources XA.
- Fournit délimitation thread-safe — votre code appelle
UserTransaction; TM gère verrous, logs, récupération.
Interfaces clés
javax.transaction.TransactionManager— serveur d'app utilise (suspend/reprise, enlist).javax.transaction.UserTransaction— votre code utilise (begin/commit/rollback).
Où il tourne
- Serveurs d'app : WildFly, GlassFish, Payara, WebLogic, WebSphere, TomEE.
- Autonome : Narayana, Bitronix, Atomikos (pour Spring Boot, Tomcat, Java SE).
Pourquoi c'est important
Sans TM, vous coordonneriez manuellement commits entre BDD — source d'erreurs et unsafe. TM garantit tout-ou-rien même sur systèmes hétérogènes.
