Référence : JPA2
Durée : 3 jours (21 heures)
Dernière mise à jour : mars 2023
Présentation
JPA est un acronyme qui signifie Java Persistence API. Ce standard fait partie de la galaxie Jakarta EE, il est né suite au succès dans les années 2000 du projet open source Hibernate qui est depuis devenu une de ses implémentations. Basé sur le concept d’ORM (Object-Relational Mapping), JPA s’est imposé comme une technologie incontournable pour bâtir les couches d’accès aux données des applications d’entreprise.
Cette formation, uniquement consacrée à ce framework, a l’ambition d’être exhaustive. Elle commencera par une présentation des principes généraux et des règles de base du mapping objet-relationnel puis enchaînera sur les cas de modélisation plus complexes, les requêtes JPQL, l’API Criteria, les mécanismes de cache, de flush et la gestion des transactions…Enfin nous lèverons le voile sur le fonctionnement interne des moteurs JPA, leurs subtilités et les optimisations à envisager pour assurer de bonnes performances et cela même avec une volumétrie et une sollicitation importante.
Programme
Introduction
- Premiers pas
- Pourquoi un ORM ?
- Les cas d’usage
L’essentiel du mapping
- Annotations ou fichier XML
- Structure de données imposée ou libre
- Génération de schéma
- Les identifiants, les associations
- Chargement différé et opérations en cascade
Mapping avancé
- L’héritage entre entités
- Clés primaires composites
- Les objets embarqués
- Associations ordonnées et indexées
- Relations bidirectionnelles
- Suppression des orphelins
- Créer des convertisseurs personnalisés
Opérations de base
- Le CRUD : persist(), find(), merge(), remove()
- Piloter les transactions
- Naviguer dans le graphe d’objets
- Les états des entités
- La méthode refresh()
Accéder aux données
- JPQL (Java Persistence Query Language)
- Requêtes nommées, natives et procédures stockées
- Parcourir les résultats sous forme de Stream
- API Criteria et le méta-modèle
- Définition du graphe d’entités
Le contexte de persistance
- EntityManager et cache de niveau 1
- Contexte étendu
- Flush et commit
- Cache de niveau 2, clustering
Pour aller plus loin
- Framework de validation
- Les verrous optimistes et pessimistes
- JPA et les beans transactionnels
- Les erreurs à ne pas commettre
- Stratégies d’optimisation
En présentiel
Nous dispensons nos formations en présentiel dans nos locaux de Toulouse ou dans vos locaux dans toute l’Europe.
En distanciel
Nous dispensons également nos formations à distance, sous forme de classe virtuelle en visio conférence, avec l’outil de votre choix (Google Meet, Teams, Zoom…).
Pour toute demande contactez-nous !
Méthode pédagogique
60% de travaux pratiques
Modalités d’évaluation
Travaux pratiques et QCM
Audience
Développeurs back-end serveur
Versions des technologies
JPA 2.2
Pré-requis
Connaissances Java, notions de bases de données
Tarif
Nous consulter
Eligible au CPF (290174 – Oracle Certified Professional)
Témoignages clients
Stéphane R. – Institut Pasteur
« Une formation indispensable pour maîtriser la persistance des données en java. Les explications du formateur étaient très claires et bien détaillées. »