Gestion de la persistance avec JPA et Hibernate - Valtech Training
Gestion de la persistance avec JPA et Hibernate - Valtech Training
Gestion de la persistance avec JPA et Hibernate - Valtech Training
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
formation coaching ingénierie inter intra<br />
<strong>Gestion</strong> <strong>de</strong> <strong>la</strong> <strong>persistance</strong> <strong>avec</strong> <strong>JPA</strong> <strong>et</strong> <strong>Hibernate</strong><br />
<strong>Gestion</strong> <strong>de</strong> <strong>la</strong> <strong>persistance</strong> <strong>avec</strong> <strong>JPA</strong> <strong>et</strong> <strong>Hibernate</strong><br />
RÉFÉRENCE PERIB DURÉE 3 jours (21 heures)<br />
La <strong>persistance</strong> d'obj<strong>et</strong>s Java dans une base <strong>de</strong> données re<strong>la</strong>tionnelle se révèle rapi<strong>de</strong>ment complexe <strong>et</strong> coûteuse à<br />
écrire, d'où <strong>la</strong> popu<strong>la</strong>rité grandissante du Framework Open Source <strong>Hibernate</strong>. Alors que <strong>de</strong> moins en moins <strong>de</strong><br />
développeurs sont compétents en SQL, il perm<strong>et</strong> <strong>de</strong> répondre efficacement aux problèmes les plus courants du<br />
mapping obj<strong>et</strong> / re<strong>la</strong>tionnel rendant ainsi le développement plus simple <strong>et</strong> plus rapi<strong>de</strong>. N'ayant rien <strong>de</strong> magique il<br />
doit cependant être utilisé <strong>avec</strong> précaution <strong>et</strong> se trouve encore au coeur <strong>de</strong> beaucoup <strong>de</strong> débats techniques <strong>et</strong><br />
passionnés.<br />
Au terme <strong>de</strong> ce cours vous aurez acquis, sur <strong>JPA</strong> (Java Persistence Api) <strong>et</strong> le Framework <strong>Hibernate</strong>, les<br />
compétences nécessaires pour réaliser une couche <strong>de</strong> <strong>persistance</strong> efficace mappée sur une base existante. Vous<br />
aurez un regard critique sur son efficacité <strong>et</strong> sa pérennité <strong>et</strong> pourrez argumenter sur <strong>la</strong> mise en p<strong>la</strong>ce <strong>de</strong> plusieurs<br />
solutions d'optimisation comme un cache <strong>de</strong> second niveau.<br />
Vous allez apprendre à :<br />
• Rendre persistants vos obj<strong>et</strong>s <strong>avec</strong> <strong>JPA</strong><br />
• Utiliser le <strong>la</strong>ngage <strong>de</strong> requêtes JPQL<br />
• Utiliser <strong>JPA</strong> <strong>avec</strong> une base <strong>de</strong> données existante<br />
• Intégrer un ORM dans différentes architectures (Web <strong>et</strong> distribuées)<br />
• Optimiser l'accès aux données<br />
• Éviter les écueils les plus courants<br />
• Utiliser les annotations <strong>JPA</strong> pour décrire les méta-données <strong>de</strong> mapping<br />
Métho<strong>de</strong> pédagogique :<br />
60% <strong>de</strong> travaux pratiques<br />
Audience :<br />
Développeurs Java, chefs <strong>de</strong> proj<strong>et</strong>s<br />
Pré-requis :<br />
Bonne expérience pratique du <strong>la</strong>ngage Java ou avoir suivi le cours<br />
JOD ou IJOP<br />
Travaux pratiques :<br />
Au cours <strong>de</strong> c<strong>et</strong>te formation, vous réaliserez le mapping d'un modèle métier impliquant les principales techniques<br />
<strong>de</strong> mapping : associations <strong>de</strong> toutes sortes (One-to-One, Many-to-One, Many-to-Many, unidirectionnelles <strong>et</strong><br />
bidirectionnelles), héritage <strong>et</strong> composition. Vous construirez ensuite une couche <strong>de</strong> <strong>persistance</strong> <strong>de</strong> ce modèle<br />
métier <strong>avec</strong> mise en p<strong>la</strong>ce d'une gestion transactionnelle afin <strong>de</strong> bien cerner l'impact d'<strong>Hibernate</strong> sur <strong>la</strong> conception<br />
<strong>de</strong>s couches <strong>de</strong> service <strong>et</strong> <strong>de</strong> <strong>persistance</strong>. Ce cours utilise <strong>Hibernate</strong> comme moteur <strong>de</strong> <strong>persistance</strong> <strong>JPA</strong> ; il peut<br />
néanmoins être suivi si vous utilisez une autre implémentation (TopLink, Open<strong>JPA</strong>...).<br />
Programme :<br />
Mise en oeuvre <strong>de</strong> <strong>la</strong> <strong>persistance</strong><br />
Mapping obj<strong>et</strong> / re<strong>la</strong>tionnel
Processus <strong>de</strong> développement<br />
Connexion à <strong>la</strong> base<br />
• Le gestionnaire d'entité<br />
Configuration d'un Entity Manager<br />
Création, ajout <strong>et</strong> suppression d'obj<strong>et</strong>s<br />
Conception<br />
Design Patterns pour couche <strong>de</strong> <strong>persistance</strong><br />
Persistance du modèle obj<strong>et</strong><br />
<strong>Gestion</strong> <strong>de</strong> l'héritage<br />
• <strong>Gestion</strong> <strong>de</strong>s associations<br />
JPQL<br />
C<strong>la</strong>uses <strong>de</strong>s requêtes<br />
•<br />
Les fonctions d'agrégation<br />
Les requêtes polymorphes<br />
• Criteria<br />
Utilisation avancé<br />
Transactions<br />
Exceptions<br />
<strong>Gestion</strong> du cache<br />
• Lazy Loading<br />
Paris<br />
- 7ème<br />
Écriture du fichier <strong>de</strong> mapping<br />
Utilisation <strong>de</strong>s annotations<br />
<strong>Gestion</strong> <strong>de</strong> l'i<strong>de</strong>ntifiant<br />
•<br />
Me<strong>et</strong> in the Middle)<br />
•<br />
Types <strong>de</strong> données <strong>et</strong> personnalisation<br />
Types <strong>de</strong> mapping (Top-Down, Bottom-Up,<br />
Stratégies <strong>de</strong> mapping d'héritage<br />
Stratégies <strong>de</strong> mapping d'association<br />
Architectures techniques<br />
<strong>JPA</strong> dans une application client / serveur<br />
<strong>JPA</strong> dans une application Web<br />
• <strong>JPA</strong> dans une architecture distribuée<br />
Limitations <strong>et</strong> interrogations<br />
Pourquoi choisir <strong>JPA</strong> ?<br />
Limites techniques<br />
Limites stratégiques<br />
•<br />
Lien entre <strong>JPA</strong> <strong>et</strong> les EJB 3<br />
Avril 2015<br />
du 27 au 29<br />
1 821,00 €<br />
Juill<strong>et</strong> 2015<br />
du 20 au 22<br />
1 821,00 €