-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
-Sécuriser l’application
– Spring dans l’écosystème Java EE.
– Les composants essentiels : core, accès aux donnés, webmvc,,webflux.
– L’intégration aux autres technologies.
– L’environnement de développement.
– Les stratégies de déploiement.
Travaux pratique
Prise en main de l’environnement de développement
– Types de configuration : en Java ou par annotations
– Beans, Bean Factory et ApplicationContext
– Modes singleton et prototype : comprendre la notion de scope
– Gérer les propriétés
– Utiliser SpEL (Spring Expression Language)
– Configurer et activer les profils
– Les méthodes d’injection de dépendances
– Annotations @Component, @Autowired, @Qualifier, @Ressource…
Travaux pratique
Création d’une première application en utilisant Spring Core, déclaration de
beans et création de différents contextes.
– Les limites de la POO et les apports de la POA
– Concepts fondamentaux et terminologie : aspect, joinpoint, advice,
poincut, etc
– Les différents types d’advice : @Around, @Before, @After…
– Proxies et ProxyFactoryBean
– Différences entre Spring AOP et AspectJ
Travaux pratique
Mise en œuvre des concepts de POA, déclaration d’un pointcut, implémentation d’un advice.
– JUnit 5, présentation générale
– Les objets mock et les tests unitaires
– L’annotation @DirtiesContext et la mise en cache du contexte applicatif
– Sélection des profils
Travaux pratique
Mise en place de tests unitaires et d’intégration
– Comment Spring s’intègre avec les technologies d’accès aux données
– Le pattern DAO (Data Access Object), classes abstraites
– Utiliser les APIs d’encapsulation et le JdbcTemplate de Spring
– Spring et les ORMs (mapping objet-relationnel)
– Travailler avec le framework Hibernate
– Gérer les ressources, configurer la SessionFactory
– Utiliser la Java Persistence API avec Spring
– La gestion des transactions
– L’interface PlatformTransactionManager
– Les transactions dans les tests
Travaux pratique
Implémentation d’une couche de persistance, DAO avec les APIs Hibernate, démarcation de transactions.
-La gestion des dépendances.
– Les starters.
– La configuration automatique.
– L’environnement d’exécution.
– Le packaging (jar, war, image OCI).
– Le déploiement.
Travaux pratique
Création d’une application simple
– Modes d’authentifications
– Sécurité applicative.
– Sécurisation des routes.
Travaux pratique
Mise en œuvre de la sécurité sur l’application web développée précédemment.
– Bref retour sur le pattern MVC
– Spring MVC, architecture et composants utiles
– Signature des méthodes
– Résolution des vues et utilisation de Thymeleaf
– L’API Bean validation
– Gérer les exceptions
– Utiliser les annotation spécifiques (@Controller, @RestController, @GetMapping)
– Configurer Spring MVC avec Spring Boot
– Options de packaging
– Introduction à la programmation réactive avec Spring WebFlux
Travaux pratique
Création et configuration d’une application Spring MVC.
Référence : WEB014
Type de Stage : Pratique
Durée : 5 jours
Développeurs Java/Java EE
Bonnes connaissances en
développement Java. Expérience
requise en développement
d’applications d’entreprise.