-Connaître et assimiler les problématiques classiques de performance
liées au mapping objet-relationnel
-Maîtriser les concepts avancés d’Hibernate liés à la performance
-Maîtriser les bonnes pratiques de développement Hibernate
-Savoir utiliser les différents caches Hibernate
– le lazy loading ou chargement par nécessité
– Notion et utilisation de Proxy
– Les stratégies de fetch
Travaux pratiques
Mise en oeuvre de différentes stratégies de chargement. Etude de différents
cas d’anomalie de chargement.
– Le cache de session
– Le cache de second niveau
– Le cache mapping
– Les stratégies de cache
– Avantages et inconvénients des différentes implémentations
– Le cache de requête
Travaux pratiques
Mise en oeuvre du cache de session et du cache de second niveau.
– Problématiques liées à la concurrence d’accès Verrouillage
optimiste/pessimiste
– Clustering
– JBossTreecache
Travaux pratiques
Cas d’utilisation du verrouillage optimiste. Mise en place d’un cache
« clusterisé » avec JBoss TreeCache.
– Cas des associations bi-directionnelles
– Gestion de l’attribut inverse
– Associations polymorphes
Travaux pratiques
Manipulation des associations bidirectionnelles.
– Définition et utilité d’une structure de données
– La structure Tableau
– La structure Tableau multi-dimensions
– Les chaînes de caractères
Travaux pratiques
Mise en œuvre d’algorithmes de recherche et de tri d’un tableau
– Une table par hiérarchie
– Une table par sous-classe
– Une table par classe concrète
Travaux pratiques
Mise en oeuvre et analyse structurelle des différents héritages.
– Suivi d’une SessionFactory
– Métriques
Travaux pratiques
Analyse de différentes métriques.
Référence : WEB023
Type de Stage : Pratique
Durée : 2 jours
Chefs de projets, analystes,
concepteurs, architectes logiciels
et développeurs.
Bonnes connaissances de base
d’Hibernate. Très bonnes
connaissances du langage Java.