
-Réaliser un mapping Objet/relationnel avec Hibernate 
-Gérer les objets persistants 
-Comprendre le langage HQL et l’API Criteria 
-Gérer les transactions et les accès concurrents
-Persistance en programmation objet
– Les solutions de stockage des données 
 – SGBDR, SGBDO, BDD XML, fichiers plats, sérialisation
– Accéder aux SGBDR avec Java – JDBC
– Nécessité de l’utilisation d’un framework
– Frameworks de type Data Mapper
– Frameworks de type ORM
– Définir une classe persistante
– Définir le mapping
– Fichier de mapping XML
– Les propriétés de configuration
– Charger les fichiers de mapping en mémoire
– Définir les paramètres JDBC
– Utiliser Hibernate
– Objets SessionFactory et Session 
Travaux pratiques 
Développer une classe persistante simple
– Le contexte
– Définir les liens entre le modèle objet et le modèle relationnel
– Modèle du domaine, document de mapping, schéma bdd
– Objectifs
– Lier les classes aux tables 
Travaux pratiques 
Réailiser un mapping d’une classe
– Les opérations CRUD. Cycle de vie des objets.
– Synchronisation avec la base de données. Persistance en cascade.
– Charger les objets persistants.
– Améliorer le mapping des classes et des propriétés.
– Mapping des associations bag, list et map. 
Travaux pratiques 
Créer, mettre à jour, supprimer et charger des objets persistants
– Requêtes de base 
– Récupérer toutes les instances d’une classe
– Sélection des données
– Trier les résultats
– Jointure
– Projections
– Requêtes sur les ensembles
– Fonctions d’aggrégation
– Les groupements 
Travaux pratiques 
Effectuer des requêtes HQL. Coder les requêtes à l’aide de l’API Criteria.
– Propriétés d’une transaction
– Les propriétés ACID
– Gestion de l’atomicité
– Gestion de l’isolation
– Verrouillage pessimiste 
Verrouillage optimiste 
Travaux pratiques 
Mise en œuvre d’une transaction.
– Objectifs
– Cache de premier niveau
– Cache de second niveau
– Cache provider 
Travaux pratiques 
Configuration du cache Hibernate.
Référence : WEB032
Type de Stage : Pratique
Durée : 3 jours
Chefs de projets, analystes, 
concepteurs, architectes logiciels 
et développeurs.
Connaître Java et l’API JDBC