Spring Boot : Attention au piège @Transactional(readOnly = true) 👇
Une erreur classique que je vois souvent : croire que readOnly = true bloque les modifications. En réalité, votre code s'exécute sans erreur... mais ne sauvegarde rien.
La règle simple à retenir :
✅ @Transactional(readOnly = true) uniquement pour la lecture pure. Dès qu'il y a modification, utilisez @Transactional classique.
Dans la deuxième méthode, il y a un problème : il faut retirer l'appel à productRepository.save(...), car l'enregistrement est déjà pris en charge automatiquement grâce au mécanisme de dirty checking.
Ingénieur de conception en informatique | Miage| Développement Web| Gestion de projet Agile
1 month ago
Tu peux injecter directement le repository dans le constructeur et supprimer le @Autowired
https://medium.com/@dulanjayasandaruwan1998/spring-doesnt-recommend-autowired-anymore-05fc05309dad