Objectifs de formation
A l'issue de cette formation, vous serez capable de :
- Construire une couche de persistance en partant d'une base de données relationnelle et non relationnelle
- Alléger considérablement le code de la couche d'implémentation des classes d'accès aux données
- Optimiser vos requêtes objet afin de réduire les interactions avec le moteur relationnel
- Manipuler les requêtes dynamiques avec Spring Data (Querydsl)
- Mettre en place une couche de tests unitaires de la couche DAO.
Modalités, méthodes et moyens pédagogiques
Formation délivrée en présentiel ou distanciel* (blended-learning, e-learning, classe virtuelle, présentiel à distance).
Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).
Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :
- Ordinateurs Mac ou PC (sauf pour certains cours de l'offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
- Environnements de formation installés sur les postes de travail ou en ligne
- Supports de cours et exercices
En cas de formation intra sur site externe à M2i, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatiques...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.
* nous consulter pour la faisabilité en distanciel
** ratio variable selon le cours suivi
Prérequis
Avoir suivi le cours SPRG-INTRO "Introduction au Framework Spring" ou avoir les connaissances équivalentes. Connaître le diagramme de classe UML et les notions essentielles du framework de persistance JPA.
Public concerné
Développeurs Java / Java EE, architectes et chefs de projets techniques.
Programme
Jour 1
L'écosystème du framework Spring
- Rappel de quelques notions essentielles du framework Spring
- Quelques modules importants de Spring
- Le positionnement de Spring Data dans l'univers Spring
L'écosystème de Spring Data
- L'architecture de Spring Data
- Les gros apports de Spring Data
- Le couplage Spring Data et JPA
Rappel sur le mapping ORM JPA
- Mapping des classes simples
- Mapping des relations
- OneToMany
- ManyToOne
- ManyToMany
- Implémentation d'un héritage avec JPA
Exemples de travaux pratiques (à titre indicatif)
- S'initier à Spring Data :
- Paramétrer une application Spring Boot
- Réutiliser une couche ORM JPA pour définir la couche Repository de Spring
- Construire des requêtes dynamiques avec @Query
Jour 2
Refactoring de code avec Spring Data
- La couche Repository
- Les "Query Methods"
- L'écriture et l'exploitation des requêtes (objet et natives)
- Mise en place des "Named Query" avec Spring Data
Quelques notions avancées avec Spring Data
- Les Querydsl (équivalent des Critéria avec Hibernate)
- La sollicitation des "Entity Listener"
- L'appel des procédures stockées depuis les repository Spring Data
Tests unitaires des Beans Spring Data
- Comment tester un Bean de type Repository
- Couplage Spring DBUnit et Spring Data
Exemples de travaux pratiques (à titre indicatif)
- Tester le repository d'une entité JPA avec Spring Boot et JUnit :
- Créer une classe de test annotée avec @SpringBootTest
- Injecter le repository à tester via @Autowired
- Utiliser @DataJpaTest pour lancer une base H2 temporaire
- Importer des jeux de données de test avec @SQL
- Ecrire des méthodes de test (CRUD) pour valider le comportement du repository
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d'auto-évaluation
Accessibilité de la formation
Le groupe M2i s'engage pour faciliter l'accessibilité de ses formations. Les détails de l'accueil des personnes en situation de handicap sont consultables sur la page Accueil et Handicap.
Modalités et délais d’accès à la formation
Les formations M2i sont disponibles selon les modalités proposées sur la page programme. Les inscriptions sont possibles jusqu'à 48 heures ouvrées avant le début de la formation. Dans le cas d'une formation financée par le CPF, ce délai est porté à 11 jours ouvrés.