Je viens de découvrir que JPA vous permet d'annoter les méthodes de vos entités (avec des annotations particulières), afin de les exécuter durant le cycle de vie de leur enregistrement :
- @javax.persistence.PrePersist
- @javax.persistence.PreRemove
- @javax.persistence.PreUpdate
- @javax.persistence.PostLoad
- @javax.persistence.PostPersist
- @javax.persistence.PostRemove
- @javax.persistence.PostUpdate
Je trouve que c'est une très bonne idée car cela peut être pratique, mais c'est aussi terrible car cela ajoute de la complexité à quelque chose comme Hibernate qui est trèèèèèèèèès loin d'être un framework simple à la prise en main.
La différence entre Merge & Persist en Hibernate et JPA
Créer un EntityManagerFactory et un EntityManager
http://stackoverflow.com/questions/1989672/create-entity-manager-without-persistence-xml
Un tuto bref mais parfait pour montrer comment configurer JPA et Hibernate de manière à construire rapidement sa couche de persistance.
Ci-dessous la petite description issue du site (et récupérée automatiquement par l'application Shaarli) :
"Jesse Smith demonstrates how to map your applications' business objects directly to your database tables by using the Java Persistence API to make them easier to construct and debug."