Hibernate/JPA/Spring Data

  • Filière :

    Développement logiciel

  • Sous-filière :

    Java & XML

  • Référence

    JA-PRST

  • Durée

    3 jours (21 h)

  • Prix par personne HT

    2 050 € HT

Description

Cette formation aborde le sujet de la persistance et du mapping Objet Relationnel en Java à travers la spécification JPA, son implémentation phare Hibernate et son intégration avec Spring Data JPA. Les notions sont systématiquement abordées à travers des exercices pratiques.

Objectifs pédagogiques

  • Comprendre la problématique de la persistance et des ORM
  • Comprendre le positionnement des différents frameworks
  • Savoir mettre en pratique les différents frameworks

Public cible

  • Architecte logiciel
  • Développeur
  • Techlead

Pré-requis

  • Connaissance pratique de Java
  • Connaissance pratique de SQL

Modalités d’évaluation

L’évaluation des acquis se fait tout au long de la session au travers d’ateliers de mise en pratique des notions et concepts abordés pendant la formation.

Programme de la formation

La problématique de persistance

  • Qu’est-ce que la persistance ?
  • Données persistantes vs Objets persistants
  • JDBC / Hibernate / JPA / Spring Data et autres frameworks : positionnement
  • Le mapping objet-relationnel

Mise en place et configuration

  • Configuration avec et sans Spring Boot
  • Le fichier persistence.xml
  • Génération/synchronisation du schéma de la base
  • Configuration spécifique Hibernate

Gestion des entités

  • Définition des entités persistantes
  • EntityManager
  • CRUD
  • Cycle de vie
  • Gestion de l’identité
  • Identifiant autogénéré
  • Equals et hashCode
  • Synchronisation
  • Entité détachée
  • Transaction
  • Verrou et version

Mapping des relations

  • Relation mono et bidirectionnelle
  • Relations one-to-one
  • Relations many-to-one
  • Relations one-to-many
  • Relations many-to-many
  • Stratégies de chargement
  • EntityGraph

Requêtes

  • Les différentes API de requêtage
  • Interfaces Query et TypedQuery
  • JPQL
  • Requête nommée
  • Requête native
  • Procédure stockée
  • API Criteria

Spring Data et Spring Data JPA

  • La vision de la persistance selon Spring
  • Intégration de JPA
  • Les annotations Spring Data
  • Interfaces Repository et ses variantes
  • Conventions de nommage
  • Pagination
  • Query By Example

Programme mis à jour le