Hibernate
1
2
Persistance des objets et bases de données relationnelles
Faculté des Sciences de Tunis, Tunisie
• Majorité de bases de données relationnelles
(position dominante sur le marché, théorie solide et normes reconnues)
• Nombreuses applications développées en langage de programmation orienté-objet
• Modélisation UML
⇓
Comment effectuer la persistance des données d’une application orientée objet dans une base de données relationnelles ?
Framework de persistance:
Hibernate
Présenté par : Nourhène ALAYA
2013-2014
3
ORM : Object/Relational Mapping
• La persistance
▫ Stockage, organisation et récupération des données structurées (tri, agrégation)
▫ Concurrence et intégrité des données
▫ Partage des données
• ORM est:
▫ Persistance automatisée et transparente d’objets métiers vers une bases de données relationnelles [BK05]
▫ Description à l’aide de méta-données de la transformation réversible entre un modèle relationnel et un modèle de classes [BK05, Pat05]
▫ Capacité à manipuler des données stockées dans une base de données relationnelles à l’aide d’un langage de programmation orientée-objet ▫ Techniques de programmation permettant de lier les bases de données relationnelles aux concepts de la programmation OO pour créer une "base de données orientées-objet virtuelle"
4
Couche d’accès aux données
Couche de persistance
• Prise en charge de toutes les interactions entre l’application et la base de données
• Groupes de classes et de composants chargés du stockage et de la récupération des données
• Possibilité de servir de cache pour les objets récupérés dans la base de données pour améliorer les performances
[Wikipedia]
1
25/11/2013
5
Couche de persistance : avec correspondance objet/relationnel
6
Exemple simple de correspondance
• Implémentation POJO (Plain Old Java Object) de la classe
Departement:
• Utilisation de la couche de persistance comme un