Objectifs pédagogiques
- Reconnaître les concepts de la norme JPA
- Définir et utiliser un modèle persistant
- Résoudre les problématiques liées à la persistance d'objets sur bases relationnelles
- Utiliser le langage de requêtes objet JPQL
- Gérer les techniques et compromis permettant de garantir de bonnes performances.
Niveau requis
Bonne pratique des applications Web avec Java et bonne pratique de Java.
Public concerné
Architectes, chefs de projets, consultants, développeurs, ingénieurs.
Programme
La problématique de persistance
- Le mapping objet-relationnel
- Intérêt de JPA, positionnement
- JPA et les serveurs d'applications
- Historique des solutions, Hibernate, TopLink, EJB
- Java EE : historique
- Les serveurs Java EE
Le modèle de persistance
- Définition d'une entité persistante, concept de POJO, les attributs, les relations
- Entité et Identité
- Cycle de vie des entités
- Mise en place d'un mapping
- Mapping sans annotations
- Mapping par annotations
- Déclaration des attributs
- Représentation des différents types de relation entre entités
- Classe embarquée
- Relation 0..1
- Relation 1..N et N..1
- Relation N..M
- Manipulations CRUD des entités
- Gestion de la bidirectionnalité (ou relation inverse)
- Gestion de l'héritage et du polymorphisme
- Mapper une entité sur plusieurs tables
Travaux Pratiques
- Mise en place de la persistance d'un modèle illustrant les différentes configurations présentées
Manipulation des entités
- Le concept d'Entity Manager
- Gestion des Transactions, JTA (Java Transaction API)
- Les requêtes : requêtes nommées et requêtes dynamiques, JPQL (Java Persistence Query Language)
- Définition d'une requête
- Exécution d'une requête
- Requêtes paramétrées
- Syntaxe JPQL
Travaux Pratiques
- Utilisation des fonctionnalités de requêtage de JPA
Performances
- Utilisation de cascade
- Optimisation du chargement et Lazy Loading
- Le verrouillage optimiste
Conclusion
- Panorama des implémentations
- Futur des serveurs d'application Java et de la persistance
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d'auto-évaluation ou une certification (M2i ou éditeur)