Zenika débarque sur Android
L'expertise Zenika dans votre poche !
>> Détails <<
Hibernate
Implémenter la couche de persistance d'une application Java/JEE avec Hibernate
Référence : HIBERNATE-03
Durée : 3 jour(s)

Lieu Date de début Prix (HT) Formateur Réserver
Paris 08 septembre 2010  1490 € Envoyer
Paris 11 octobre 2010  1490 € Envoyer
Paris 01 novembre 2010  1490 € Envoyer
Paris 13 décembre 2010  1490 € Envoyer

Présentation

L'intervention réussie sur plusieurs projets ayant souffert de problèmes de performance procure aux consultants Zenika une expérience précieuse sur ce sujet, concrétisée par la mise à disposition de la librairie ZenTracker sous licence LGPL permettant de mesurer l'activité sous-jacente d'Hibernate.

Objectifs
  • Assimiler les concepts du mapping objet / relationnel
  • Savoir maîtriser les principales fonctionnalités d'Hibernate
  • Réaliser la couche de persistance d'une application JEE
  • Acquérir les bonnes pratiques de développement et d'architecture
Répartition : 50% Théorie, 50% Pratique
Public : Architecte, Développeur, Chef de projet,
Pré-requis : Connaissance de Java,

Programme

Introduction

  • La persistance transparente grâce aux outils de Mapping Objet/Relationnel (ORM)
  • Comparaison avec les techniques JDBC standard en terme de coûts et de fiabilité

Mise en place d'Hibernate

  • Description du packaging et des dépendances vers d'autres jars
  • Présentation de l'installation et des différentes techniques de configuration
  • Configuration en environnement JEE
  • Mise en place de l'outil Hibernate Tool

La configuration

  • Les fichiers hbm.xml, ou le pont entre le monde objet et le monde relationnel
  • Mise en place des annotations
  • L'identité : garant de la correspondance entre instances et enregistrements en base de données
  • Importance et utilisation des méthodes equals() et hashCode()
  • Quelle stratégie de génération d'identifiants

Manipulation de POJO

  • Il ne s'agit plus d'INSERT ou d'UPDATE, mais de cycle de vie d'un objet
  • Présentation de la SessionFactory et de la Session
  • Transiant, Persistant, Détaché, Entité, Valeur ou le vocabulaire Hibernate
  • La démarcation transactionnelle ou la garantie d'opérations ACID
  • Les opérations CRUD, les premières interactions simples avec la base de données

Relations entre entités

  • Il ne s'agit plus d'un objet, mais d'un graphe d'objets liés par des relations
  • Les 3 relations du monde objet : 1-n, n-m et 1-1 et leur correspondance en terme relationnel
  • Présentation des différents types de collection (set, bag, map, list, array) et des critères permettant de choisir
  • Choix du sens de la relation et du type (Uni-directionnel VS bi-directionnel)
    • Correspondance avec le code Java
  • L'attribut cascade et les précautions à prendre

Héritage

  • Présentation des stratégies de mapping pour la gestion de l'héritage
  • Avantages et inconvénients de chaque solution

Les composants

  • Notion de composants en opposition aux entités
  • Les composants simples
  • La collection de valeurs et de composants

Les requêtes

  • Présentation des API de requêtes (Criteria, SQL, Exemple, HQL)
  • Pertinence et choix de l'API la plus adéquate
  • Ajout de contraintes, de tris, d'ordres
  • Parcours de relations, jointures implicites et jointures ouvertes
  • Les requêtes scalaires pour optimiser les performances
  • Externaliser une requête et choix d'une technique de binding de paramètres
  • Comment utiliser les spécificités d'une base de données (cas du « connect by prior » d'Oracle)

Optimisation

  • Les mises à jour groupées
  • Initialisation paresseuse ou le chargement à la demande
  • Modification dynamique de la stratégie de fetching définie au niveau du mapping
  • Utilisation des caches de niveau 1, de niveau 2 et de requêtes
  • Quel cache est mis à jour et par quelle action ?

Architecture

  • La couche de persistance et le pattern DAO
  • Intégration dans une architecture Web
  • Gestion des sessions Hibernate et transactions
    • Le pattern OpenSessionInViewFilter
    • Intégration avec Spring
* Les livres sont offerts uniquement pour les formations inter-entreprise. Zenika se réserve le droit de changer le livre proposé à tout moment.
 Télécharger
>>Descriptif du cours
>>Bulletin d'inscription

Offert en inter-entreprise
>>Le petit déjeuner (croissants, jus d'orange, café)
>>Le déjeuner
>>Une qualification téléphonique si nécessaire avec l'un de nos consultants
>>Le livre  Java Persistence et Hibernate*