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 24 au 26 avril 2019
Du 10 au 12 juillet 2019
Du 25 au 27 septembre 2019
Du 13 au 15 novembre 2019

Paris :
Du 27 au 29 mars 2019
Du 17 au 19 juillet 2019
Du 23 au 25 octobre 2019
Du 11 au 13 décembre 2019

Méthode pédagogique

60% de travaux pratiques

Audience

Développeurs back-end serveur

Versions des technologies

JPA 2.2

Pré-requis

Maîtrise du langage 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. »