|
Les fonctionnalités du futur JPA 2.0 se dévoilent un peu plus aujourd’hui avec la sortie d’un Early Draft de la part de l’Expert Group de la Java Specification Requests 317 (JSR 317). Pour rappel, une early draft est une ébauche préliminaire qui a pour but de créer un groupe d’expert chargé de créer une première ébauche de la spécification qui sera soumise à l’examen de la communauté mais également du public.
Voici une série de nouveautés que JPA 2.0 apporterait :
- Ajout d'une annotation @Access qui permet de spécifier le type d'accès aux proprié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ées, les clés étrangères composées, 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ée de la concurrence et du locking
- API pour contrôler le cache du second niveau
- Extension de JPA-QL. Apparemment, les détails seront précisés dans un futur Draft.
|