3
mai
2008
Sortie de l’Early Draft de JPA 2.0
mai
2008
Un article de djo.mos
1 Commentaire
L’Expert Group de la JSR 317 vient enfin de sortir un Early Draft pour le futur JPA 2.0.
Voici quelques unes des nouveautés que JPA 2.0 apporterait:
- Ajout d’une annotation @Access qui permet de spécifier le type d’accès aux proriétés d’une entité: @Access(FIELD) pour spécifier un accès direct aux champs et @Access(PROPERTY) pour spécifier que l’accès doit se faire via le getter et le setter.
- Support en natif des collections de type primitifs, un peu à la manière de @CollectionOfElements d’Hibernate via @ElmenetCollection. A noter que les types Embeddable sont supportés eux aussi.
- Un support plus évolué et flexible pour les clés primaires composés, les clés étrangères composés, etc.
- Un support plus évolué pour les Maps. Les clés et les valeurs d’une Map peuvent dorénavant être de n’importe quelle combinaison (Entity, Embeddable, type primitif).
- Gestion plus sophistiqué de la concurrence et du locking
- API pour controler le cache du second niveau
- Extension de JPA-QL. Apparmment, les détails seront précisés dans un futur Draft.
Bon, ce n’est qu’un survol très rapide des nouveautés. C’est en partie dû au fait que je me suis basé sur le document officiel de l’Early Draft, qui présente les specs de JPA 2.0 sans indiquer précisément/systématiquement ce qui a changé par apport à JPA 1.0.
J’ajoute à cela :
– L’option orphanRemoval pour les collections (plus besoin d’utiliser celle d’hibernate) !!!
– l’annotation @OrderColumn pour ordonner une collection en moment de la persister.
– Le support de la validation des données persistées
– ET le plus attendu, un api de recherche par critère
N’ayant pas eu le courage de parcourir le JSR ;-), voila mes deux sources fort intéressantes, en complément de celle ci.
http://java.dzone.com/articles/looking-forward-jpa-20
http://blogs.sun.com/ldemichiel/entry/java_persistence_2_0_early (l’annonce officielle)