Objectifs de la formation
Savoir réaliser une application backend complète avec Spring framework et Spring boot.Clientèle visée
Développeurs et architectes.Préalables
Ce cours demande une connaissance solide des bases de la programmation Java (principes de la programmation orientée objet, types génériques, annotations, expressions lambda), une habitude de travailler avec Eclipse ou IntelliJ.Formateurs
Gains pour les participants
• Mettre en œuvre le couplage faible par application de l'injection de dépendances;
• Appliquer des intercepteurs et utiliser la programmation orientée aspect (AOP);
• Maîtriser la configuration automatique de Spring Boot;
• Accéder aux données d'une base de données relationnelle;
• Appliquer des transactions pour garantir la cohérence d'un système;
• Créer les endpoints d'une API REST avec Spring MVC;
• Implémenter un frontend MVC avec Spring MVC.
Architecture de la formation
Introduction
Rappel des bonnes pratiques de conceptions.
Les patterns au cœur du framework Spring: singleton, prototype, strategy, proxy, factory.
Les composants essentiels du framework Spring: core, accès aux donnés, webmvc.
Relation entre Spring framework et Spring boot.
L'environnement de développement.
Les stratégies de déploiement: JAR, image OCI, application native.
Gestion des beans avec Spring Core
L'ApplicationContext.
Déclaration d'un bean Spring.
Les profiles et l'annotation @Conditional.
L'injection de dépendances.
L'accès aux propriétés.
Les callbacks.
Tests d'un bean Spring, couplage avec Junit.
La planification des tâches.
La supervision des beans avec JMX.
Les intercepteurs: cache, transaction, AOP.
La configuration automatique.
Mise en pratique: créer une application n-tiers avec Spring Core et Spring boot.
Accès aux données et gestion des transactions
Rappels, bonnes pratiques (I/O non bloquantes, principes ACID, pool de connexions, théorème CAP).
L'apport de Spring: l'implémentation du pattern unit of work.
L'accès aux bases relationnelles avec le JdbcClient.
Le couplage avec Jakarta persistance API (JPA).
La démarcation transactionnelle avec le PlatformTransactionManager.
Introduction à Spring Data.
Mise en pratique: accéder aux données d'une base relationnelle avec Spring, appliquer des transactions.
API REST avec Spring MVC
Utilisation du serveur web embarqué.
Activation des I/O non bloquantes avec les virtual threads.
Bonnes pratiques de conception d'une API REST.
L'écriture d'un contrôleur.
La validation.
La gestion des exceptions.
Les tests d'une API REST avec MockMVC.
Mise en pratique: développer une API exposant la couche métier développée précédemment, consommation des web services REST par un frontend HTML/JavaScript.
IHM server side avec Spring MVC
Les vues, le rôle du template engine.
Le modèle.
La gestion des exceptions.
La validation.
L'internationalisation des messages.
Mise en pratique: réaliser un frontend MVC pour exposer la couche métier développée précédemment.
Si vous avez des questions sur les modalités d'inscription, d'annulation, les horaires, la langue d'enseignement, etc. vous trouverez des réponses dans notre FAQ.
Détails pédagogiques
Méthode pédagogique
Explication, pour chaque concept, du problème qu'il prétend résoudre, Mise en pratique d'un concept immédiatement après qu'il a été présenté, Validation de chaque étape par exécution de tests unitaires, Exercice « fil rouge » pour obtenir en fin de cours une application complète, QCM en fin de chapitre pour s'assurer de l'acquisition des connaissances.
Type de cours
Formation privée en entreprise
Vous êtes plusieurs à vouloir suivre une formation en particulier dans votre entreprise? Si vous êtes plus de 8 personnes, nous pouvons nous déplacer à vos bureaux pour vous donner votre formation en privé. Contactez-nous pour plus de détails ou demandez-nous une soumission en ligne.
Demander une soumissionFormation privée en entreprise
Vous êtes plusieurs à vouloir suivre une formation en particulier dans votre entreprise? Si vous êtes plus de 8 personnes, nous pouvons nous déplacer à vos bureaux pour vous donner votre formation en privé. Contactez-nous pour plus de détails ou demandez-nous une soumission en ligne.
Demander une soumission