Hibernate, mise en oeuvre avancée
Réf: BER
Durée: 2 jours
Objectifs de la formation
Réaliser un mapping objet-relationnel adapté à votre besoin demande une bonne maîtrise d’Hibernate. Vous verrez les concepts avancés qui vous permettront d »affiner votre approche, de répondre à vos problématiques de performance, et de mettre en place des stratégies de chargement.
Contenu de cette formation Hibernate:
-Stratégies de chargement
-Mécanismes de caches
-Partage des données
-Optimisation des associations
-Mapping d’héritage de classes
-Suivi des performances
-Projets annexes
Programme de Formation
Stratégies de chargement
-Problématiques liées au chargement des données, l’impédance mismatch, les stratégies de fetch.
-Le chargement par select et sous select.
-Le chargement par jointure, par lot.
Travaux pratiques
Mise en oeuvre de différentes stratégies de chargement. Etude de différents cas d »anomalie de chargement.
Mécanismes de caches
-La gestion des caches.
-Le cache de session.
-Le cache de second niveau, configuration (cache de cluster ou de JVM), types de caches (EHCache, JBossTreeCache, …).
-Mappages de cache.
-Les différentes stratégies : lecture seule, lecture/écriture, lecture/écriture non stricte, transactionnelle.
-Compatibilités entre les caches et les stratégies de concurrence.
-Le cache de requêtes.
Travaux pratiques
Mise en oeuvre du cache de session et du cache de second niveau.
Partage des données
-Transactions et accès concurrents.
-Gestion de la concurrence par contrôle optimiste.
-Verrouillage pessimiste.
-Mise en cluster.
Travaux pratiques
Cas d »utilisation du verrouillage optimiste. Mise en place d »un cache « clusterisé » avec JBOSSTreeCache.
Optimisation des associations
-Gestion des associations bidirectionnelles.
-Attribut de mapping » inverse « .
-Associations polymorphes.
Travaux pratiques
Manipulation des associations bidirectionnelles.
Mapping d »héritage de classes
-Les stratégies d »héritage.
-Une table par hiérarchie de classe.
-Une table par sous-classe.
-Une table par classe concrète.
-Le polymorphisme implicite.
-Limitations.
Travaux pratiques
Mise en oeuvre et analyse structurelle des différents héritages.
Suivi des performances
-Activation des métriques (statistiques).
-Les différents métriques disponibles
-L »accès aux métriques (SessionFactory).
-Publication des métriques via JMX.
Travaux pratiques
Analyse de différentes métriques.
Projets annexes
-Hibernate Validator.
-Hibernate Search.
-Hibernate Shards.
Travaux pratiques
Mise en oeuvre de validation. Activation/Désactivation de la validation. Déclenchement de validation autonome. Mise en oeuvre de requêtes Hibernate Search. Mise en oeuvre de Shards et discussion.
Profil Stagiaires & Pré-requis
Ingénieurs, architectes, chefs de projets.
Bonnes connaissances de base d »Hibernate. Très bonnes connaissances du langage Java.
Prix : 1320 € HT.
Paris, Lyon, Aix, Nantes, Rennes, Toulouse, Bordeaux, Bruxelles, Strasbourg, Lille, Geneve, Sophia-antipolis, Luxembourg
Dates de Formation
Nous consulter