Se rendre au contenu

JPA Hibernate

Développement Java > Accès aux Données


Une formation de 3 jours sur JPA et Hibernate : mapping d'entités, gestion des transactions, requêtes JPQL, validation avec Hibernate Validator, optimisation des performances et migration de schéma.

La formation en 6 mots clés

JPA

Hibernate

ORM

Base de Données

Spring Data

Java

Informations Pratiques et Programme

Prérequis


Connaissance de Connaissances de base en Java

Durée


3 jours

Contenu Technique de la Formation


La formation aborde les contenus techniques suivants :

  • Introduction à l'ORM (Object-Relational Mapping) avec Hibernate
  • Configuration et intégration d'Hibernate avec JPA
  • Création d'entités et mapping avec Hibernate
  • Gestion des relations entre entités (OneToOne, OneToMany, ManyToMany)
  • Validation des données avec Hibernate Validator (JSR 303)
  • Utilisation des annotations de validation
  • Gestion des transactions et du contexte de persistance
  • Techniques d'optimisation des performances avec Hibernate
  • Utilisation des critères et de HQL (Hibernate Query Language)
  • Gestion des migrations de base de données avec Liquibase ou Flyway

Objectifs de la Formation


Les objectifs visés par cette formation sont :

  • Comprendre et utiliser les concepts de base d'Hibernate et JPA pour la gestion des données
  • Mapper des classes Java vers des tables de base de données relationnelle
  • Gérer les relations entre entités et leur cycle de vie
  • Valider les données des entités avant leur persistance en base
  • Optimiser les performances des requêtes et de la gestion des transactions

Table des Matières


Introduction à JPA et Hibernate

  • Concept d’ORM (Object-Relational Mapping)
  • Qu'est-ce que JPA et Hibernate ?
  • Installation et configuration d’Hibernate avec Maven
  • Différences entre JPA et Hibernate


Mapping d’entités avec JPA/Hibernate

  • Création de classes entités avec les annotations JPA (@Entity, @Table, etc.)
  • Mapping des attributs simples (@Column, @Id, @GeneratedValue)
  • Gestion des types de colonnes et des stratégies de génération de clés primaires
  • Mapping des relations entre entités :
  • @OneToOne, @OneToMany, @ManyToOne, @ManyToMany
  • Cascade et gestion du cycle de vie des entités


Gestion des transactions

  • Le rôle du EntityManager et du contexte de persistance
  • Gestion des transactions (Java Transaction API - JTA)
  • Notions de commit, rollback, propagation des transactions
  • Transactions programmatiques vs déclaratives


Requêtes et récupération des données

  • Introduction à HQL (Hibernate Query Language)
  • Utilisation de JPQL (Java Persistence Query Language)
  • Création et exécution de requêtes avec l’API Criteria
  • Pagination et tri des résultats
  • Optimisation des requêtes (lazy loading vs eager loading)


Validation avec Hibernate Validator (JSR 303)

  • Introduction à la validation des données avec Hibernate Validator
  • Annotations de validation courantes : @NotNull, @Size, @Min, @Max, @Email, etc.
  • Validation des entités au moment de la persistance
  • Création de validations personnalisées
  • Gestion des groupes de validation
  • Intégration de la validation dans les formulaires et les API REST


Optimisation des performances

  • Utilisation du cache de premier niveau (EntityManager) et du cache de second niveau
  • Stratégies de fetching (lazy vs eager)
  • Gestion des batchs de requêtes pour optimiser les performances
  • Indexation des colonnes et optimisation des bases de données


Migration de schéma de base de données

  • Introduction aux outils de migration de base de données : Liquibase, Flyway
  • Configuration et utilisation pour gérer les évolutions du schéma


En Pratique


  • Création d’un modèle de base de données et mapping des entités avec Hibernate
  • Gestion des relations entre entités et création de requêtes HQL
  • Validation des données avant persistance avec Hibernate Validator
  • Implémentation d’un système de transactions et gestion des transactions dans une application
  • Optimisation des requêtes avec des stratégies de fetching et l’utilisation des caches
  • Migrations de schéma de base de données avec Liquibase ou Flyway

Modalités et Inscription


Cette formation est proposée selon deux formules pour s'adapter au mieux à vos besoins :


Session régulière

Des sessions sont organisées à intervalles réguliers. Demandez les prochaines dates planifiées pour vous inscrire à la prochaine session.


Sur mesure & intra-entreprise

Vous souhaitez former vos équipes directement dans vos locaux ou adapter le programme technique à votre contexte d'entreprise ? Contactez-nous pour obtenir un devis personnalisé.

Obtenir cette formation

Prêt à maîtriser JPA et Hibernate ? Rejoignez la prochaine session ou contactez-nous pour organiser cette formation dans vos locaux.


Devis sur-mesure

S'inscrire à cette formation

Remplissez le formulaire pour obtenir plus d'informations.