À l’issue de la formation, les participants seront capables de :
Concevoir une API REST robuste avec Spring Boot 4
Structurer une application en couches (Controller / Service / Repository)
Gérer la persistance avec Spring Data JPA
Implémenter validation et gestion globale des erreurs
Sécuriser une API avec Spring Security
Écrire des tests unitaires et d’intégration
Préparer une application pour la production
Développeurs Java ou Kotlin
Développeurs backend
Équipes techniques souhaitant standardiser leurs pratiques Spring
Bonne maîtrise de Java opu Kotlin
Notions HTTP / REST
Maven ou Gradle
Java 21+ installé
IDE (IntelliJ / Eclipse / VS Code)
PostgreSQL installé ou accessible
Comprendre l’écosystème Spring et les nouveautés de Spring Boot 4.
Spring Framework vs Spring Boot
Nouveautés Spring Boot 4
Jakarta EE 10+
Auto-configuration
Starters et dépendances
Structure d’un projet
Architecture en couches
Génération d’un projet via Spring Initializr
Analyse de la structure du projet
Construire une API maintenable et bien structurée.
@SpringBootApplication
@RestController
Mapping HTTP (GET, POST, PUT, DELETE)
@PathVariable, @RequestParam
DTO vs Entity
Injection de dépendance
ResponseEntity
Bonnes pratiques REST
Création d’une API CRUD Product.
application.yml
Profils (dev, test, prod)
@ConfigurationProperties
Variables d’environnement
Externalisation de la configuration
Mise en place d’un profil dev et prod.
Mettre en place une couche d’accès aux données robuste.
Configuration datasource PostgreSQL
@Entity, @Id, @GeneratedValue
Relations (@OneToMany, @ManyToOne)
JpaRepository
Méthodes dérivées
Requêtes personnalisées (@Query)
Pagination et tri
Gestion des transactions
Ajout des entités :
Product
Category
Relation entre les deux
Connexion à PostgreSQL et persistance réelle des données.
Jakarta Validation (@NotNull, @Email, etc.)
@Valid
@ControllerAdvice
Gestion globale des exceptions
Format d’erreur standardisé
Ajout de la validation et d’un gestionnaire global d’erreurs.
Application REST complète avec :
CRUD fonctionnel
Persistance PostgreSQL
Validation
Gestion d’erreurs propre
Sécuriser une API REST.
Configuration SecurityFilterChain
Authentification Basic
Introduction JWT
Rôles et autorités
Gestion CORS
Désactivation CSRF pour API REST
Endpoint public
Endpoint sécurisé
Ajout rôle ADMIN
Mettre en place une stratégie de test.
JUnit 5
Mockito
@SpringBootTest
MockMvc
Tests repository
Tests d’intégration avec PostgreSQL (Testcontainers recommandé)
Test de la couche service
Test d’un controller REST
Spring Boot Actuator
Endpoints health et metrics
Logging (Logback)
Configuration des logs par profil
Packaging JAR
Dockerisation de l’application
Docker Compose avec PostgreSQL
Ajout Actuator
Création d’un Dockerfile
Exemple docker-compose.yml
Clean Architecture adaptée à Spring
Séparation DTO / Entity
Mapper (MapStruct)
Gestion des transactions
Organisation des packages
Bonnes pratiques d’industrialisation
Monolithe vs microservices
Quand découper ?
API e-commerce simplifiée :
User
Product
Category
Order
CRUD produits
Création commande
Sécurisation des endpoints
Validation
Tests
Monitoring via Actuator
Base PostgreSQL
Théorie |
35% |
Démonstration |
25% |
Pratique |
40% |
Support PDF
Code source complet
Version étape par étape
Exercices corrigés
Cheatsheet annotations Spring Boot
Dockerfile et docker-compose
Pour prendre cette formation, merci d’envoyer un courriel à xavier.bouclet@digitowls.com