Nos domaines de formation :

Formation Hibernate, mise en oeuvre avancée

Stage pratique
Training video offert
Durée : 2 jours
Réf : BER
Prix  2018 : 1470 € H.T.
Pauses et déjeuners offerts
  • Programme
  • Participants / Prérequis
  • Intra / sur-mesure
Programme

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.

Objectifs pédagogiques

  • Mettre en œuvre les différentes stratégies de chargement
  • Mettre en œuvre le cache de session et le cache de second niveau.
  • Mettre en place un cache "clusterisé" avec JBoss TreeCache
  • Mettre en œuvre un mapping d'héritage de classes
  • Optimiser des associations
  • Suivre les performances d'une application Hibernate
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 cache (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 JBoss TreeCache.

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.

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.

Participants / Prérequis

» Participants

Ingénieurs, architectes, chefs de projets.

» Prérequis

Bonnes connaissances de base d'Hibernate. Très bonnes connaissances du langage Java.
Intra / sur-mesure
Programme standard     Programme sur-mesure
Oui / Non

Vos coordonnées

Dates de sessions

Pour vous inscrire, cliquez sur la session qui vous intéresse.
[-]
PARIS

Horaires

Les cours ont lieu de 9h à 12h30 et de 14h à 17h30.
Les participants sont accueillis à partir de 8h45.
Pour les stages pratiques de 4 ou 5 jours, les sessions se terminent à 15h30 le dernier jour.