Présentation de la formation Spring – Développement d’applications Java JEE
Spring est un framework Java puissant et flexible qui facilite le développement d'applications robustes et évolutives. Il propose un large éventail de fonctionnalités, telles que l'injection de dépendances, la gestion de transactions, et la sécurité, tout en favorisant une architecture modulaire et légère. Ce framework est particulièrement apprécié pour sa capacité à simplifier le développement d'applications d'entreprise en intégrant facilement des services tiers. Apprenez à maîtriser Spring pour créer des applications performantes et maintenables, tout en utilisant les meilleures pratiques. Rejoignez notre formation Spring pour transformer vos projets Java en solutions professionnelles efficaces.
Objectifs de la formation Spring – Développement d’applications Java JEE
Objectifs pédagogiques :
- Créer des applications Web avec Spring MVC
- Créer des Web Api REST FULL
- Mettre en oeuvre l’injection de dépendances avec Spring 5
- Optimiser le paramétrage du conteneur léger de Spring 5
- Accéder à vos données avec Spring JDBC et Spring ORM
- Mettre en oeuvre la programmation par Aspect
- Tester des applications Spring 5
- Sécuriser vos applications avec Spring Security
Objectifs opérationnels :
- Mettre en œuvre les bonnes pratiques de développement d'applications d'entreprise avec Spring
Programme de la formation Spring – Développement d’applications Java JEE
Jour 1 – Fondamentaux Spring Framework
Introduction
Évolution de Spring : de J2EE à Spring 6.x (Java 21, Jakarta EE)
Concepts clés : Inversion de Contrôle (IoC) et Injection de Dépendances (DI)
Programmation Orientée Aspects (AOP)
Spring Core
Beans et cycle de vie (BeanFactory, ApplicationContext)
Configuration par XML et Java Config (@Configuration, @Bean)
Injection de dépendances (constructeur, setter, champs)
Scopes : singleton, prototype, request, session
SpEL (Spring Expression Language)
Annotations Core : @Component, @Autowired, @Qualifier, @Resource, @Value
Jour 2 – Accès aux données & Web MVC
Accès aux données
Abstraction DAO et gestion des ressources
JDBC via JdbcTemplate
Spring ORM : intégration avec Hibernate
Gestion des transactions (PlatformTransactionManager, @Transactional)
Configuration SessionFactory avec PostgreSQL
Implémentation DAO avec Hibernate et Spring
Spring MVC
Architecture MVC de Spring
Configuration de Spring MVC sans Boot (dispatcher servlet, config Java/XML)
Vues JSP / JSTL
Binding et validation (@Valid, Bean Validation)
Internationalisation (i18n)
Gestion des erreurs et exceptions
Annotations Web : @Controller, @RestController, @RequestMapping, @GetMapping, etc.
Création d’une API REST classique avec Spring MVC
Jour 3 – Programmation Réactive, Sécurité & Communication temps réel
Programmation Réactive
Introduction à Spring WebFlux (même sans Boot)
Types réactifs : Mono, Flux
Scheduler, threads et backpressure
Gestion des erreurs et debugging
Spring Security
Mise en place de Spring Security (sans Boot)
Authentification (formulaire, Basic Auth)
Autorisation et sécurisation des routes
Gestion avancée avec ACL
Communication temps réel
WebSocket avec Spring : principe pub/sub
STOMP, SockJS et fallback
Configuration côté serveur et côté client
Tests
JUnit 5 et Spring Test
Tests unitaires et d’intégration (@ExtendWith(SpringExtension.class), @ContextConfiguration)
Profils de test
Tests concurrents et gestion de contexte (@DirtiesContext)
Les autres formations en Frameworks & Back-End
ASP Core et MVC Core 8 – Développement back-end .NET
Développer avec le Framework ASP.NET Core et MVC Core
Blazor – Applications web interactives avec .NET
Développer des applications web interactives et performantes en utilisant Blazor avec ASP.NET
Identity Server (Duende) – Authentification & sécurité
Mettre en place un service d'authentification avec Identity Server
Node.js – Développement back-end JavaScript
Apprendre la programmation JavaScript côté serveur avec node.js
Spring Boot – Développement Java optimisé
Développer des applications Java optimisées avec Spring Boot