Formation Spring Boot
Maîtrisez le framework Java le plus populaire pour le développement d'applications d'entreprise
Spring Boot pour les applications Web
Spring est un framework qui simplifie considérablement la programmation Java. Il fournit une couche d’abstraction qui permet d’intégrer facilement l’ensemble des technologies Java (JPA, REST, JMS,…). La richesse des fonctionnalités offertes et la simplicité de mise en oeuvre font de Spring Framework le conteneur le plus attractif du marché.
Ce cours vous permettra de comprendre les principes fondamentaux de Spring Framework (Inversion de Contrôle, AOP, couche d’abstraction). Il vous apportera tous les éléments nécessaires pour développer avec efficacité une application n-tiers en utilisant Spring Boot.
Public cible
Développeurs Java
Développeurs ayant une bonne connaissance du langage Java et souhaitant apprendre Spring pour créer des applications d'entreprise
Architectes logiciels
Architectes souhaitant comprendre les patterns et bonnes pratiques Spring pour concevoir des architectures robustes.
Tech leads
Leaders techniques devant évaluer et comprendre les technologies Spring pour leurs projets d'équipe.
Prérequis
Prérequis obligatoires
- Connaissance et pratique du dévelopemment Java
- Fonctionnement du Web
- Expérience avec Maven ou Gradle
- Compréhension des bases de données relationnelles et SQL
Connaissances recommandées
- Utilisation d'un IDE (IntelliJ IDEA, Eclipse, VS Code)
- Notions d'injection de dépendances
- Expérience avec JPA/Hibernate
- Familiarité avec les concepts REST
Environnement technique
Outils de développement
Configuration système
Programme détaillé
Les principes fondamentaux de Spring Framework
-
Techniques de développement Java
-
Frameworks spécialisés : MVC, mapping O/R, traces,…
-
Design pattern IoC
-
Historique de Spring Framework
-
Fonctionnalités de Spring Framework et Spring Boot
Les premiers pas avec Spring
-
Démarrer avec Spring Initializr
-
Gestion facile des dépendances avec les starters
-
Utiliser les conventions plutôt que la configuration
Le développement de services REST
-
Définition des services REST
-
Structure de données JSON
-
Mise en oeuvre avec Spring MVC
-
Développement d’un REST controller
-
Gestion des erreurs
L’injection de composants
-
Principe de l’inversion de contrôle
-
Déclaration des beans
-
Techniques d’injection de beans
-
Périmètre et cycle de vie des composants
L’accès aux données persistantes
-
Accès aux bases de données relationnelles avec JDBC
-
Intégration de JPA avec Spring
-
Gestion des transactions
-
Présentation de Spring Data et Spring Data JPA
-
Accès aux bases de données NoSQL
-
Mise en oeuvre avec Spring Data MongoDB
Les techniques avancées de configuration
-
Démarrage d’une application Spring Boot
-
Injection de valeurs de configuration
-
Pre et post traitement de requête HTTP
-
Initialisation d’application Web
-
Utilisation de profils
Les tests automatisés
-
Tests unitaires et tests d’intégration
-
Mocks statiques
-
Intégration de Spring dans les tests
-
Utilisation des profils
-
Gestion des transactions
-
Cycle de vie et cas des tests polluants
-
Tests avec Spring Boot
La sécurité
-
Communications TLS
-
Authentification et autorisation avec Spring Security
-
Mise en oeuvre pour Oauth2
Synthèse
-
Avantages et inconvénients de Spring Boot
-
Utilisations de Spring Framework
-
Génération de code avec JHipster
Objectifs et résultats attendus
Compétences acquises
- Maîtriser les concepts fondamentaux de Spring (IoC, DI)
- Développer des applications Web avec Spring Boot
- Créer des APIs REST robustes et documentées
- Implémenter la persistance avec Spring Data JPA
- Sécuriser des applications web avec Spring Security
- Configurer et déployer une application Spring Boot
- Tester efficacement du code Spring
Livrables formation
- Code source de tous les travaux pratiques
- Projet final complet et fonctionnel
- Slides de formation en PDF
- Notes techniques
- Ressources et liens utiles
Prêt à maîtriser Spring Boot ?
Contactez-moi pour organiser cette formation pour votre équipe ou vous inscrire à la prochaine session.
Formation disponible en présentiel ou en distanciel.
Adaptation du contenu possible selon vos besoins spécifiques.