Object Relational Mapping - Java Persistence API

Java Persistence API, la théorie

Présentation

Java Persistence API ou J.P.A est la spécification Java de l'O.R.M. Il s'agit d'une sous spécification de la norme EJB3 (JSR220) du framework Java Enterprise 5.

La spécification J.P.A est le fruit du rassemblement des travaux issus des O.R.M Java pré existants.

Java Enterprise Edition

Cette édition de la plate-forme Java se base sur l'édition standard à laquelle elle ajoute les librairies permettant le développement de solutions multi-tiers, distribuées et tolérantes aux pannes. En 2008, Java Enterprise Edition est disponible dans sa version 5.

Les implémentations

Il existe de nombreuses implémentations de la couche de persistance J.P.A. Dans les lignes qui suivent, on décrira uniquement les trois principales :

Oracle Toplink

Cette implémentation proposée par l'éditeur de logiciel Oracle se décline en deux versions :

Hibernate

Hibernate est la couche de persistance du serveur d'application JBoss propriété de la société éponyme et division de RedHat. Cette implémentation fournit un ensemble d'outils supplémentaires important et permettant de simplifier davantage la manipulation de données. De part ces ajouts, cette implémentation s'écarte de la spécification à proprement parler. Son utilisation avancée peut rendre difficile une hypothétique migration vers une autre implémentation.

OpenJPA

Cette implémentation est un projet de la fondation Apache. Ce projet encore jeune a fournit une première version stable en août 2007. On dispose actuellement de peu de retour sur cette nouvelle implémentation, en particulier dans le monde de l'entreprise.

Environnement d'exécution

J.P.A a été conçu pour être utilisé dans les deux environnements de développement suivants :

Il est important de noter que le code produit dans l'un des environnements est utilisable dans le second sans aucune modification.

Les bénéfices apportés

Les aspects techniques ...