Description
Objectifs de formation : à l’issue de la formation, le stagiaire sera capable de mettre en oeuvre le framework Spring et les bonnes pratiques associées, dans les projets de développement d’applications.
Objectifs pédagogiques
- Comprendre le fonctionnement de Spring et son positionnement dans les technologies Java
- Savoir gérer la configuration des composants d’une application avec Spring
- Implémenter un service d’accès aux données
- Connaître les bonnes pratiques de développement avec Spring
- Connaître les apports de la Programmation Orientée Aspect (AOP)
- Sécuriser l’application
Public concerné
Développeurs Java
Architectes Java SE / Java EE
Chefs de projets techniques
Prérequis
Avoir de bonnes connaissances du langage Java
Déroulé du programme
1
Présentation de Spring
- Notions de base du framework
- Positionnement de Spring dans l'univers Java
- Vue d'ensemble et exemples d'utilisation
- L'intégration aux autres technologies
2
Spring : conteneur léger
- Conception
- Les composants essentiels : core, accès aux donnés, webmvc, webflux
- L’environnement de développement
- Les stratégies de déploiement
- Au-delà de Spring Framework : security, boot, data
3
Gestion des beans avec Spring Core
- Le découpage en couches
- L'approche POJO
- La gestion de l'état
- L'injection de dépendances
- Les intercepteurs et la programmation orientée aspect
- Le cache et la supervision avec JMX
- Les invocations planifiées
- Les profils
- Test des beans Spring
- Travaux pratique : création d'une application n-tiers sous Spring
4
Les données et les transactions
- Les combinaisons avec d'autres technologies
- La gestion de transaction
- Transactions et tests
- Spring Data
- Travaux pratiques : création d’une couche de persistance avec JPA et Spring.
5
API REST, Spring MVC & Spring WebFlux
- Les best practices de l'API REST.
- Les fondements du protocole HTTP
- Installation de l'API REST
- L'API Bean validation
- Gérer les exceptions
- Spring Webflux : programmation réactive
- Travaux pratiques : développement d'une façade web, consommation des web services REST par un client HTML/JavaScript.
6
Spring Boot : packaging et déploiement
- Les dépendances et leurs gestions
- Les starters
- La configuration automatique
- L'environnement d'exécution
- Le packaging
- Déploiement
- Travaux pratiques : construction d'un livrable Spring Boot par l'API REST
7
La sécurité avec Spring
- Choix d'un référentiel utilisateurs
- Modes d'authentifications (session, JWT)
- Sécurité applicative
- Sécurisation des routes
- Travaux pratiques : création de la sécurité sur le projet web
8
Spring Websocket : échanges de messages
- Théorie
- design patterns
- Le principe pub/sub
- Introduction de STOMP et SockJS
- Support et mécanismes de fallback
- Installation côté serveur et côté client
- Travaux pratiques : création d’un mécanisme de publish/subscribe
9
IHM Web avec Spring MVC
- La validation avec l’API Bean validation
- Rappel du pattern MVC
- Les vues : accès au modèle, validation, internationalisation, gestion des exceptions
- Travaux pratiques : création d'une application web exposant la couche métier développée précédemment
10
Focus sur la programmation orientée aspect
- Les concepts
- La terminologie utilisée : aspect, joinpoint, advice, pointcut, introduction, target object, AOP proxy, weaving
- Les différents types "advice" : around, before, throws, after
- Les objectifs et fonctionnalités AOP de Spring
- Intégration avec le framework AspectJ
Informations
Durée
4 jour(s)
28h
Tarif
2380 € HT
HT