Profile picture of Philémon GLOBLÉHI
Philémon GLOBLÉHI
Développeur Java
Follow me
Generated by linktime
June 17, 2025
8 développeurs sur 10 commettent cette erreur en Spring Boot 👇 Hier, en relisant du code legacy, je suis tombé sur ce pattern qui me fait encore grimacer. Une erreur tellement répandue qu'elle est devenue invisible. Le problème ? Des développeurs qui appellent systématiquement .save() après chaque modification d'entité dans une méthode transactionnelle. Avec Spring Data JPA et @Transactional, votre EntityManager surveille déjà tous les objets récupérés depuis la base. Dès que vous modifiez une propriété, il marque l'entité comme "dirty". Au moment du commit de transaction, il génère automatiquement les requêtes UPDATE nécessaires. C'est ce qu'on appelle le "dirty checking" d'Hibernate. En gros, vous payez le prix de deux opérations : ✅ La vérification automatique (qui aura lieu de toute façon) ✅ Votre .save() manuel (qui force une synchronisation prématurée) Cette subtilité change la donne quand vous traitez des milliers d'entités. J'ai vu des gains de performance de 30% juste en nettoyant ces appels redondants. --- Je suis Philémon GLOBLÉHI, consultant Java, j'accompagne les entreprises dans leurs projets stratégiques : - Développement & architecture logiciel - Modernisation de systèmes legacy - Conception de microservices robustes - Coaching & montée en compétences des équipes Un projet en tête ? Réservez un rendez-vous : https://lnkd.in/ecRArCmt Ou envoyez-moi un message en DM
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.

224 Likes
June 17, 2025
Discussion about this post
Profile picture of Alioune S.
Alioune S.
Engineer | Problem Solver | Writer | Building Robust Softwares at INTOUCH SA | JAVA & DevOps | Polytechnique
3 months ago
Pour des applications JEE, cela dépend de la configuration de ton Jboss par exemple.
Profile picture of Lorenzo PUCCIO
Lorenzo PUCCIO
Développeur web fullstack | Java Spring Boot | TypeScript React
3 months ago
Bonjour Philémon ! Si je comprends bien, c'est donc l'annotation Transactional sur la méthode qui s'assure que return commande; fasse la sauvegarde de l'entité via JPA?
Profile picture of Harvey Konan
Harvey Konan
Software engineer / Ingénieur logiciel
3 months ago
Top