Programmation
Développer des API avec Java Spring Boot
Une formation pratique pour construire une API REST complète avec Spring Boot, de l’initialisation du projet jusqu’au déploiement en conteneur, avec les pratiques des équipes de développement professionnelles.
Présentation
Description
Spring Boot est le cadre de référence pour les applications Java côté serveur : banques, administrations, plateformes de commerce et services en ligne l’utilisent pour leurs API et leurs microservices. Maîtriser Spring Boot, c’est accéder à une large part des offres d’emploi en développement back-end.
Tout au long de la formation, chaque participant construit la même application de bout en bout : une API de gestion (catalogue, commandes, utilisateurs) avec base de données, sécurité, tests et documentation. Chaque séance ajoute une couche, jusqu’à une application prête à être déployée avec Docker.
Pour qui
Public et prérequis
Public visé
- Étudiants en informatique ayant suivi un cours de Java
- Développeurs PHP, Python ou .NET qui veulent passer à Spring
- Développeurs Java qui découvrent Spring Boot
Prérequis
- Bases de Java et de la programmation orientée objet (classes, héritage, interfaces)
- Notions de SQL (SELECT, INSERT, jointures)
- Un PC avec 8 Go de RAM, JDK 21 et un IDE (IntelliJ IDEA ou VS Code)
Objectifs et méthode
Ce que vous saurez faire
À l’issue de la formation
- structurer un projet Spring Boot avec Maven ou Gradle et comprendre l’injection de dépendances
- exposer une API REST propre : contrôleurs, DTO, validation et gestion des erreurs
- persister des données avec Spring Data JPA et gérer les relations et les migrations
- sécuriser l’API avec Spring Security et des jetons JWT
- écrire des tests unitaires et d’intégration (JUnit, Mockito)
- documenter l’API avec OpenAPI et la déployer dans un conteneur Docker
Méthode pédagogique
- Courts exposés, puis codage en direct et ateliers à chaque séance
- Un projet fil rouge qui grandit de séance en séance, versionné avec Git
- Bonnes pratiques professionnelles : architecture en couches, revue de code, tests, configuration par environnement
- Exercices progressifs avec corrections commentées
Programme
10 séances
30 h au total, séances de 3 h.
-
Séance 01
Écosystème Java et premier projet Spring Boot
Place de Spring dans l’écosystème Java, Spring Initializr, structure d’un projet Maven, démarrage de l’application et premier point d’accès HTTP.
Durée : 3 h
-
Séance 02
Injection de dépendances et configuration
Conteneur Spring, beans, composants et services, injection par constructeur, fichiers de configuration et profils par environnement.
Durée : 3 h
-
Séance 03
Construire une API REST
Contrôleurs REST, verbes HTTP, codes de retour, DTO et mapping, tests manuels des points d’accès avec un client HTTP.
Durée : 3 h
-
Séance 04
Persistance avec Spring Data JPA
Entités, dépôts, requêtes dérivées et personnalisées, connexion à PostgreSQL ou MySQL, migrations de schéma avec Flyway.
Durée : 3 h
-
Séance 05
Relations et requêtes avancées
Relations un-à-plusieurs et plusieurs-à-plusieurs, chargement paresseux, pagination, tri et filtres, problème N+1 et ses solutions.
Durée : 3 h
-
Séance 06
Validation et gestion des erreurs
Validation des entrées, messages d’erreur cohérents, gestionnaire global d’exceptions, format d’erreur standard pour les clients de l’API.
Durée : 3 h
-
Séance 07
Sécurité : authentification et autorisation
Spring Security, chiffrement des mots de passe, authentification par jeton JWT, rôles et protection des points d’accès.
Durée : 3 h
-
Séance 08
Tests automatisés
Tests unitaires avec JUnit et Mockito, tests d’intégration des contrôleurs et de la base, couverture et organisation des tests.
Durée : 3 h
-
Séance 09
Documentation, observabilité et Docker
Documentation OpenAPI, journalisation, Actuator et métriques, création d’une image Docker et lancement avec Docker Compose.
Durée : 3 h
-
Séance 10
Projet final et soutenance
Finalisation du projet fil rouge, revue de code croisée, démonstration de l’API complète et soutenance individuelle.
Durée : 3 h
Programme adaptable (microservices, Spring Cloud, volume horaire, public).
Évaluation et modalités
Validation et organisation
Évaluation et validation
- Ateliers vérifiés à chaque séance, projet versionné sur Git
- Projet final : API complète, testée et documentée, présentée en soutenance et notée sur 20
- Attestation de formation délivrée par OSDIGITALIS, Open Digital Service
Modalités
- Durée
- 30 heures, en 10 séances de 3 heures
- Format
- présentiel en salle informatique, ou intra-entreprise / établissement
- Effectif
- groupes de 8 à 20 participants
- Matériel
- un poste par participant avec JDK 21, IntelliJ IDEA ou VS Code, Docker et un client HTTP
- Supports remis
- fiches de séance, énoncés d’ateliers, code source de référence du projet
- Formateur
- Mohammed Slimani, développeur fullstack senior et architecte DevOps, plus de 20 ans d’expérience
Après la fiche
Exercices, corrections et TP
Sur demande, par WhatsApp ou par e-mail.
Les exercices, les corrections et les TP de cette formation ne sont pas en ligne. Écrivez-moi en indiquant la formation et votre situation (stagiaire, établissement, entreprise) et je vous les envoie. Un espace privé est prévu pour les regrouper.
Espace formation
Toutes les formations
Systèmes d’exploitation
4 formations
Programmation
3 formations
DevOps
4 formations
Bases de données
1 formation
Vous formez une équipe ?
Découvrez les formations sur mesureFaisons connaissance
De quoi avez-vous besoin aujourd’hui ?
Une application à créer, une infrastructure à faire évoluer, une équipe à former. Prenons le temps d’en parler.