La persistance de données avec JPA 2.0

4 jours - 28 heures

Objectifs

Établir un mapping entre des objets java et des tables relationnelles. Créer, mettre à jour et supprimer des objets persistants. Maîtriser le langage de requêtes JPQL. Gérer des transactions

Participants

Développeurs, chefs de projet, architectes.

Prérequis

Bonnes connaissances du langage Java.

Pédagogie

La pédagogie est basée sur le principe de la dynamique de groupe avec alternance d'apports théoriques, de phases de réflexion collectives et individuelles, d'exercices, d'études de cas et de mises en situations observées. Formation / Action participative et interactive : les participants sont acteurs de leur formation notamment lors des mises en situation car ils s'appuient sur leurs connaissances, les expériences et mettront en œuvre les nouveaux outils présentés au cours de la session.

Profil de l’intervenant

Consultant-formateur expert. Suivi des compétences techniques et pédagogiques assuré par nos services.

Moyens techniques

Encadrement complet des stagiaires durant la formation. Espace d’accueil, configuration technique des salles et matériel pédagogique dédié pour les formations en centre. Remise d’une documentation pédagogique papier ou numérique à échéance de la formation.

Méthodes d’évaluation des acquis

Exercices individuels et collectifs durant la formation. La feuille d’émargement signée par demi-journée ainsi que l’évaluation des acquis de fin de stage sont adressées avec la facture.

Programme

JPA - Architecture logicielle

Processus 2TUP

Modèle architecture logicielle en 5 couches

Modélisation de la couche métier et persistance : Domain Object, DAO et VO

Structuration avec les Patterns Method Factory, Abstract Factory

JPA - Architecture technique de JPA

Introduction à la problématique de persistance

Spécifications et implémentations

Fournisseur et contexte de persistance

Mise en place de l'environnement

Présentation des outils de la plate-forme Eclipse

Création d'un projet aux normes JPA

JPA -Fondamentaux du mapping d'objets persistants

Exemple d'application simple de persistance d'objets Java

Classe de persistance : l'annotation @Entity

Alternative : mapping xml

Opérations CRUD

Gestion des clés primaires

JPA - Mapping des relations unidirectionnelles

Associations unidirectionnelles

Associations unidirectionnelles avec tables de jointure

JPA - Mappings des relations bidirectionnelles

Associations bidirectionnelles sans table de jointure

Associations bidirectionnelles avec table de jointure

JPA - Mapping des Objets du domaine

Mapping des clés composites

Composants embarqués

JPA - Mapping d'une relation d'héritage

Une table par hiérarchie de classes

Une table par classe concrète

Une table par classe fille

JPA - Mapping des Collections et types objets complexes

Principe de fonctionnement des listes

Utilisation des collections d'élémentsles différents types de collections

Ordonnancement d'une collection

Utilisation des maps

JPA - Effectuer ses requêtes avec JPQL

Le langage JPQL

Utilisation des objets Query

Utilisation des clauses et fonctions Chargement avec FETCH

Les requêtes polymorphiques

Les requêtes nommées

JPA - Gestion des transactions

Transactions locales

Transactions gérées par le conteneur avec JTA

Environnement managé et annotations

JPA - Cycle de vie des objets

Le cycle de vie d'un objet

Méthodes de passage d'un état à l'autre

JPA - L'API Criteria

Créer une requête par critère

Spécifier un select

Restriction du résultat

Trier les résultats

Associations

JPA - Utilisation avancée de JPA

Méthode de callback et listeners

Validation

Concurrence d'accès

Verrous

Gestion du cache

JPA - Nouveautés de JPA 2.0

Annotations

Verrous

Gestion du cache

Gestion des Maps

Identifiant dérivé

Objets embarqués

Mapping de Collections

OneToMany unidirectionnel

Mapping des listes ordonnées

Suppression des orphelins

Généralités sur les verrous

Verrou pessimiste

Utilisation de l'API de cache

Propriétés standards

API Criteria

JPA - Nouveautés de JPA 2.1

Convertisseurs

API Criteria : DELETE et UPDATE Procédures stockées

ConstructorResult

JPA - Spécificités des implémentations de JPA

Spécificités des implémentations de JPA : Hibernate, EclipseLink, OpenJPA

log-289.pdf


Formations Durée Référence

Apprendre le développement en langage Java : côté serveur (classes, types de variables, structure de contrôles, POO). Acquérir la maîtrise ...

5 jours log-074

Acquérir les fondements de la programmation et de l'algorithmique, des bases en programmation qui vous permettront d'aborder n'importe quel langage ...

3 jours LGDV240

Approfondissement des connaissances en découvrant les aspects avancés du Java. Réaliser des applications graphiques en respectant les architectures recommandées pour ce ...

5 jours log-081

Concevoir une application Web basée sur Java, en utilisant des frameworks issus du monde libre.

3 jours log-196

Maîtriserez les bonnes pratiques de développement, de test et de mise en production du Framework Google.

3 jours log-142

Connaître les enjeux et possibilités de Maven

5 jours LGDV250
3 jours log-242

Embarquer vos applications grâce à J2ME Maîtriser les configurations CLDC et CDC Découvrir le profil MIDL Interfacer des applications Java avec C / ...

3 jours log-171

Développer des applications mobiles avec ANDROID

4 jours log-050

Mettre en oeuvre de la sécurité au niveau de la machine virtuelle Java. Exploiter des API spécifiques telles que JAAS, ...

2 jours log-286

Comprendre concepts et enjeux des architectures Web. Comprendre et savoir évaluer l’architecture et la conception des principaux Framework Web du ...

4 jours log-287

Connaître les scénarios d’architectures impliquant les composants EJB. Maîtriser le cycle de vie et les callbacks EJB. Faire persister des ...

4 jours log-288

Comprendre les apports de l'API JAXB et savoir la mettre en œuvre.

1 jour log-290