JPA2 – Persistance de données en Java

Référence : JPA2
Durée : 3 jours (21 heures)

Présentation

JPA est un acronyme qui signifie Java Persistence API. Ce standard fait partie de la galaxie JavaEE, 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 EJB
  • Les erreurs à ne pas commettre
  • Stratégies d’optimisation

Prochaines sessions inter-entreprises

Toulouse :
Du 13 au 15 novembre 2019
Du 22 au 24 avril 2020
Du 08 au 10 juillet 2020
Du 23 au 25 septembre 2020
Du 18 au 20 novembre 2020

Paris :
Du 11 au 13 décembre 2019
Du 25 au 27 mars 2020
Du 15 au 17 juillet 2020
Du 21 au 23 octobre 2020
Du 09 au 11 décembre 2020

Méthode pédagogique

60% de travaux pratiques

Audience

Développeurs back-end serveur

Versions des technologies

JPA 2.2

Pré-requis

Connaissances Java, notions de bases de données

Tarif

1595 €

Votre nom (obligatoire)

Votre email (obligatoire)

Votre société (obligatoire)

Votre demande

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. »