Hibernate / JPA
Présentation générale y Architecture du noyau Hibernate
Environnement de travail
Classes persistantes dans Hibernate
Opérations du gestionnaire de persistance
Méta-données : fichiers de mapping/annotations des l d classes métier éti Récupération d’instances persistantes
Requêtes
Transactions
©Maude Manouvrier - Univ. Paris Dauphine
84
Hibernate : généralités (1/3)
Outil ORM ou Cadre (Framework) de persistance libre (open source) gérant la persistance des objets
Java/J2EE en base de données relationnelle [Wikipédia,
]
Pat05]
Version 3.x (2010:3.6) : implémentation du standard de persistance EJB 3.0 Java Persistence API (JPA)
Possibilité d’être utilisé aussi bien dans un développement client lourd, que dans un environnement web léger de type Apache Tomcat ou dans un environnement J2EE complet [Wikipédia]
Code SQL généré à l’exécution via des informations fournies dans un document de correspondance
(mapping) XML ou des annotations
©Maude Manouvrier - Univ. Paris Dauphine – repris et adapté de [Pat05] et [Gri09]
85
1
Hibernate : généralités (2/3)
©Maude Manouvrier - Univ. Paris Dauphine – repris de http://hibernate.org/
86
Hibernate : généralités (3/3)
Différents modules :
Hibernate Core : API native implémentant les services de base pour la persistance
•
•
Méta-données au format XML (+ annotations depuis la version 3.6)
Langage HQL et interface pour écrire des requêtes
Hibernate Annotations (inclus dans Hibernate Core 3.6) :
Remplacement des fichiers XML par des annotations JDK 5.0 implémentant les annotations du standard JPA + annotations spécifiques à Hibernate
Hibernate Entity Manager : Implémentation de la partie des spécifications JPA concernant
•
•
•
Les interfaces de programmation,
Les règles de cycle de vie des objets persistants
Les fonctionnalités d’interrogation
Hibernate Entity Manager = wrapper au dessus du noyau Hibernate implémentant une