Profile picture of Philémon GLOBLÉHI
Philémon GLOBLÉHI
Développeur Java
Follow me
Generated by linktime
September 5, 2025
@Transactional : Les 4 règles d'or que tout développeur Java doit connaître 👇 Vous utilisez @Transactional mais vous tombez dans ces pièges classiques ? Voici les 4 points essentiels expliqués simplement : 1. Seulement les méthodes publiques L'annotation ne fonctionne que sur les méthodes publiques. Si vous mettez @Transactional sur une méthode private ou protected, elle sera tout simplement ignorée. Pourquoi ? Spring utilise des proxies qui ne "voient" que les méthodes publiques. 2. Rollback automatique uniquement sur les erreurs graves Par défaut, seules les RuntimeException déclenchent un rollback. Les exceptions "normales" comme IOException n'annulent pas la transaction. Solution : Utilisez rollbackFor pour spécifier exactement quelles erreurs doivent annuler la transaction. 3. Pas d'auto-invocation Si une méthode de votre classe appelle une autre méthode de la même classe, @Transactional ne marchera pas sur la méthode appelée. Pourquoi ? L'appel interne contourne complètement le proxy Spring. 4. Personnalisez avec rollbackFor Vous pouvez contrôler précisément quelles exceptions doivent déclencher un rollback en utilisant le paramètre rollbackFor. Astuce : Testez toujours vos transactions avec des cas d'erreur pour vérifier qu'elles se comportent comme attendu. #Spring #Java #Développement #Transaction #SpringBoot
Stay updated
Subscribe to receive my future LinkedIn posts in your mailbox.

By clicking "Subscribe", you agree to receive emails from linktime.co.
You can unsubscribe at any time.

42 Likes
September 5, 2025
Discussion about this post
Profile picture of Yassine El Miloudi
Yassine El Miloudi
Développeur Fullstack Junior | Node.js • React • Angular • Java | Passionné par la création de solutions digitales innovantes
13 days ago
Super rappel 👌 ! Beaucoup de devs pensent que @Transactional “fait tout tout seul”, alors que les subtilités comme rollbackFor ou l’auto-invocation peuvent vraiment piéger.
Profile picture of Kevin Lokoka
Kevin Lokoka
Founder @Prouve Tech - La plateforme qui connecte devs & recruteurs IT
15 days ago
Quand j’ai débuté en Java (Spring Boot), je n’avais pas encore utilisé @Transactional. Tu viens de m’apprendre une nouvelle annotation
Profile picture of Laurent FREDERICK
Laurent FREDERICK
Ingénieur Logiciel | Java • Spring Boot | Certifié Java SE 21 & CKAD
15 days ago
Merci Philémon GLOBLÉHI pour ce partage. À noter qu’à partir de Spring 6.0, l’annotation @Transactional peut également être appliquée à des méthodes protected ou package-private lorsqu’on utilise un proxy basé sur les classes (CGLIB proxy).