☀️ C'est l'été chez ITTA ! Profitez de 10% de réduction jusqu'au 31 juillet sur une sélection de formations 🌴

Formation : Introduction à la Persistance de données avec JPA

Durée :
3
 jours
Examen :
Non certifiant
Niveau :
Intermédiaire
Financement :
Eligible

Formation introduction à la Persistance de données avec JPA

Le cours Introduction à la persistance de données avec JPA offre une compréhension claire et progressive du framework Java Persistence API. Cette formation vous accompagne étape par étape pour apprendre à gérer la persistance des objets dans une application Java moderne. Grâce à cette approche, vous comprendrez comment relier efficacement vos classes POJO à une base de données relationnelle.

Pourquoi apprendre JPA dès maintenant

La technologie JPA repose sur le concept de mapping objet-relationnel. Elle simplifie la gestion des données et évite d’écrire du code SQL complexe. Vous découvrirez les notions fondamentales comme les entités, les clés primaires, les relations et le cycle de vie des objets persistants. Ces compétences sont essentielles pour développer des applications robustes et évolutives.

Profils des Participants

  • Développeurs Java débutants
  • Programmeurs souhaitant maîtriser la persistance de données
  • Étudiants en informatique orientés développement logiciel
  • Ingénieurs logiciels en début de carrière

Objectifs

  • Expliquer comment persister leur classe POJO avec une base de données relationnelle en utilisant la technologie JPA de  mapping objet-relationnel
  • Mettre en œuvre et maintenir une persistance objet-relationnel dans leur application JPA, et tous les clients nécessaires côté client et côté serveur

Connaissances Préalables

  • Avoir une connaissance intermédiaire de Java
  • Maîtriser les bases du SQL et des bases de données relationnelles
  • Comprendre les principes de JDBC et la création d’applications web simples

Contenu du Cours

Module 1 : Introduction à l’API de persistance Java (JPA)

  • Couches de persistance, mappage objet-relationnel (ORM), JDBC
  • Vue d’ensemble de JPA
  • Entities et @Entity, ids et @Id
  • Valeurs d’ID générées
  • Types de mappage de base
  • Persistance vers la base de données, l’API EntityManager
  • Unités de persistance, configuration, contexte de persistance
  • Recherche d’entités persistantes avec find()
  • Mappages par défaut, @Basic, @Column
  • Field vs Property Access
  • Mappages temporels (date / heure)
  • Options de journalisation (basée sur le fournisseur)

Module 2 : Mises à jour et requêtes

  • Nouvelles entités persistantes, mise à jour et suppression
  • Requêtes basées sur l’entité, SELECT, WHERE
  • Interface de requête, exécution et requêtes génériques
  • Opérateurs, expressions et paramètres JPQL
  • Requêtes nommées
  • Projection, commande, agrégation, mise à jour et suppression
  • @Embeddable, @Embedded et objets incorporés
  • Clés primaires composées avec @EmbeddedID et @IDClass

Module 3 : Le cycle de vie de la persistance

  • Aperçu de l’API Transaction
  • EntityTransaction, JTA et Resource-local EntityManager
  • États d’entité JPA et diagramme d’état
  • Contexte de persistance et synchronisation
  • Version, @Version et verrouillage optimiste
  • @PrePersist, @PostPersist et Entity Listeners

Module 4 : Relations d’entités

  • Relations d’objet, rôles, directionnalité et cardinalité
  • @ManyToOne, @OneToMany, @ManyToMany, @OneToOne
  • Relations unidirectionnelles et bidirectionnelles
  • Collection Types et cascades
  • Jointures internes, externes et de récupération
  • Mappage d’héritage d’entité
  • Mappage de table unique, joint et par classe concrète
  • Collections d’objets valeur avec @ElementCollection

Module 5 : L’API Critères (JPA 2)

  • Vue d’ensemble de l’API Criteria
  • CriteriaBuilder, CriteriaQuery, Subquery et Predicate
  • Exécution des requêtes et récupération des résultats

Module 6 : Capacités JPA supplémentaires

  • Fichiers XML de Mapping
  • Validation des Beans
  • Clés primaires, requêtes nommées et chargement paresseux
  • Sémantique transactionnelle et encapsulation
  • Requêtes de rapport et meilleures pratiques

Module 7 : Intégration

  • Intégration DAO et gestion d’EntityManager dans Java SE
  • Utilisation de JPA avec des beans de session EJB
  • JTA Transactions et contextes de persistance étendus
  • EntityManager dans les applications Web
  • Lazy Loading et Open EntityManager
  • Intégration avec Spring et injection d’EntityManager

Documentation

  • Support de cours numérique inclus

Cours complémentaires

Financement Eligible

ITTA est partenaire d’un fonds de formation continue destiné aux travailleurs temporaires. Ce fonds peut subventionner cette formation, sous réserve que vous soyez assujetti(e) à la convention collective de travail (CCT) « Location de services » et que vous remplissiez certaines conditions, notamment avoir travaillé au moins 88 heures au cours des 12 derniers mois.

Informations Additionnelles

JPA, un outil incontournable pour les développeurs Java

La gestion de la persistance de données est un défi majeur dans tout projet logiciel. Les développeurs doivent assurer la cohérence entre leurs objets Java et les données stockées dans une base relationnelle. Sans outil dédié, cette tâche implique beaucoup de code complexe et répétitif. C’est là que JPA intervient. En tant que spécification standard, elle permet d’unifier et de simplifier le processus. En l’adoptant, les entreprises réduisent les coûts de maintenance et améliorent la qualité de leurs applications.

Les bénéfices pratiques de la persistance de données

Utiliser JPA ne se limite pas à simplifier l’écriture de code. Ce framework apporte une valeur réelle aux projets. Il rend les applications plus évolutives et plus faciles à maintenir. La séparation claire entre la logique métier et l’accès aux données facilite les évolutions futures. Les développeurs peuvent se concentrer sur les fonctionnalités au lieu de gérer des requêtes SQL complexes. Cette abstraction réduit aussi les risques d’erreurs et améliore la sécurité des applications.

Comprendre les entités et leur cycle de vie

Au cœur de JPA se trouvent les entités. Ce sont des classes Java directement associées aux tables de la base de données. Comprendre leur cycle de vie est essentiel pour tout développeur. Une entité peut être nouvelle, gérée, détachée ou supprimée. Chaque état a un impact direct sur la manière dont l’application interagit avec la base. En maîtrisant ce mécanisme, un programmeur peut contrôler précisément les transactions et éviter les incohérences de données.

La puissance des relations entre objets

Dans un projet réel, il est rare de manipuler des objets isolés. Les applications nécessitent souvent des relations complexes, comme un client lié à plusieurs commandes. JPA offre une gestion complète de ces associations avec des annotations simples comme @OneToMany ou @ManyToOne. Ces relations permettent de représenter fidèlement le modèle métier dans la base de données. Pour les équipes de développement, cela signifie une meilleure lisibilité et un code plus proche de la réalité fonctionnelle.

Construire des requêtes efficaces avec JPQL et l’API Criteria

Une application ne peut fonctionner sans requêtes. Avec JPA, deux approches principales sont possibles. La première utilise JPQL, un langage proche du SQL mais orienté objet. La seconde repose sur l’API Criteria, qui permet de générer dynamiquement des requêtes via du code Java. Cette flexibilité est précieuse pour les applications nécessitant des filtres complexes ou évolutifs. En maîtrisant ces outils, un développeur peut créer des solutions puissantes et performantes, adaptées aux besoins métiers.

Optimiser la performance avec les bonnes pratiques

La persistance de données ne doit pas compromettre la performance d’une application. JPA propose plusieurs mécanismes pour optimiser les traitements. Le chargement paresseux (lazy loading) évite de récupérer inutilement des données volumineuses. Le verrouillage optimiste assure une gestion efficace des accès concurrents sans bloquer inutilement les utilisateurs. Les développeurs découvrent aussi l’intérêt des caches de second niveau et des requêtes nommées. Ces techniques permettent de réduire la charge sur la base et d’améliorer la réactivité globale.

Un framework adapté aux environnements modernes

JPA s’intègre naturellement dans différents contextes. Il fonctionne aussi bien dans une application Java SE autonome que dans une application web basée sur des serveurs d’entreprise. Il se marie parfaitement avec des frameworks comme Spring, qui facilitent la gestion des transactions et l’injection de dépendances. Grâce à cette flexibilité, il est utilisé dans une large variété de projets, des petites applications internes aux solutions critiques déployées à grande échelle.

Pourquoi se former à JPA est un atout professionnel

La maîtrise de JPA est une compétence recherchée dans le monde du développement Java. Les entreprises valorisent les profils capables de concevoir des applications fiables et maintenables. Suivre une formation JPA permet d’acquérir des connaissances solides et directement applicables en entreprise. Cela prépare aussi les développeurs aux certifications Java avancées. Enfin, cette expertise ouvre la voie vers des postes plus spécialisés, comme architecte applicatif ou ingénieur logiciel confirmé.

FAQ

JPA est-il un framework ou une spécification ?
JPA est une spécification. Elle définit un standard, et plusieurs frameworks comme Hibernate ou EclipseLink en sont des implémentations.

Quelle est la différence entre JPA et Hibernate ?
Hibernate est une implémentation de JPA. Apprendre JPA permet donc d’utiliser Hibernate, mais aussi d’autres solutions compatibles.

JPA peut-il être utilisé dans des microservices ?
Oui, JPA est compatible avec les architectures modernes. Il s’intègre facilement avec Spring Boot, largement utilisé pour les microservices.

Quels sont les avantages principaux de JPA ?
JPA réduit la complexité du code, améliore la productivité et garantit une meilleure cohérence entre objets et base de données.

Prix de l'inscription
CHF 2'150.-
Inclus dans ce cours
  • Formation dispensée par un expert du domaine
  • Documentation et supports digitaux
  • Badge de réussite
Mois actuel

lun29Sepmer01OctVirtuelVirtuel Etiquettes de sessionJPA

lun29Sepmer01OctGenève, Route des Jeunes 35, 1227 Carouge Etiquettes de sessionJPA

lun03Nov(Nov 3)09:00mer05(Nov 5)17:00VirtuelVirtuel Etiquettes de sessionJPA

lun03Nov(Nov 3)09:00mer05(Nov 5)17:00Lausanne, Avenue Mon repos 24, 1005 Lausanne Etiquettes de sessionJPA

lun08Déc(Déc 8)09:00mer10(Déc 10)17:00VirtuelVirtuel Etiquettes de sessionJPA

lun08Déc(Déc 8)09:00mer10(Déc 10)17:00Genève, Route des Jeunes 35, 1227 Carouge Etiquettes de sessionJPA

Contact

ITTA
Route des jeunes 35
1227 Carouge, Suisse

Horaires d’ouverture

Du lundi au vendredi

de 8h30 à 18h00

Tél. 058 307 73 00

Contactez-Nous

ITTA
Route des jeunes 35
1227 Carouge, Suisse

Faire une demande

Opening hours

Monday to Friday
8:30 AM to 6:00 PM
Tel. 058 307 73 00

Contact-us

ITTA
Route des jeunes 35
1227 Carouge, Suisse

Make a request