Choisissez votre langue
Formation Java Spring Boot
Plus de 2 millions d'apprenants dans le monde

Formation Java Spring Boot

Maîtrisez Java et Spring Boot de A à Z et construisez des applications prêtes pour la production que les employeurs recherchent réellement. Ce cours vous fait passer des fondamentaux de Java jusqu'aux API REST, à la persistance de données, à la sécurité, aux tests et au déploiement avec Docker. Chaque concept est ancré dans des pratiques d'ingénierie réelles utilisées dans les équipes de développement professionnelles.

Dedika pour entreprises

Ce que vous allez apprendre:

Vous commencerez par les fondamentaux de Java, notamment la POO, les collections et les fonctionnalités modernes de Java, puis vous passerez à la configuration de projet Spring Boot, à l'injection de dépendances et à l'architecture de l'application. De là, vous concevrez et construirez des API RESTful avec une validation appropriée, une gestion des erreurs et une documentation OpenAPI. Vous persistez les données à l'aide de Spring Data JPA, sécurisez vos API avec Spring Security et JWT, et écrivez des tests unitaires et d'intégration avec JUnit 5 et Mockito. Enfin, vous conteneuriserez votre application avec Docker et configurerez l'observabilité à l'aide de Spring Boot Actuator, Prometheus et Grafana.

Comment vous étudiez de façon pratique Formation Java Spring Boot

Comment vous pratiquez Formation Java Spring Boot

Pour vous, entreprise, qui souhaitez former votre équipe

Avec Dedika pour les entreprises, le cours inclut des exercices et des exemples adaptés à votre propre activité et aux besoins spécifiques de votre entreprise.

Cliquez ici

Contenu du cours

8 Chapitres • 39 LeçonsDurée entre 4 et 360 heures (vous décidez)

Chapitre 1Voir les détails

Fondamentaux Java pour Spring Boot

  • Leçon 1 • Gestion des exceptions et débogage

    Couvre les exceptions vérifiées et non vérifiées, try-catch-finally et les exceptions personnalisées. Une gestion robuste des erreurs est essentielle pour construire des API Spring Boot fiables.

  • Leçon 2 • Fonctionnalités modernes de Java

    Introduit les lambdas, les flux (streams), Optional et les enregistrements (records) de Java 8 à Java 17. Spring Boot exploite largement ces fonctionnalités dans ses couches d'auto-configuration et de données.

  • Leçon 3 • Collections et génériques

    Explore List, Set, Map et Queue avec des paramètres de type générique. Une utilisation appropriée des collections est essentielle pour gérer les données dans les services et dépôts Spring.

  • Leçon 4 • Syntaxe Java et types de données

    Couvre les types primitifs, les variables, les opérateurs et le flux de contrôle. Établit la base de syntaxe requise pour tout code Java et Spring ultérieur.

  • Leçon 5 • Principes de la programmation orientée objet

    Enseigne l'encapsulation, l'héritage, le polymorphisme et l'abstraction en utilisant les classes Java. Ces piliers de la programmation orientée objet sous-tendent la conception de chaque composant et bean Spring.

Chapitre 2Voir les détails

Configuration et structure du projet Spring Boot

  • Leçon 1 • Auto-configuration Spring Boot

    Explique comment Spring Boot auto-configure les beans en fonction des dépendances du classpath. Comprendre ce mécanisme évite les erreurs de configuration et facilite le dépannage.

  • Leçon 2 • Structure et conventions de l'application

    Explique la disposition standard des packages, la classe principale et les conventions Spring Boot. Suivre ces conventions permet l'auto-configuration et le scan de composants.

  • Leçon 3 • Spring Initializr et outils de build

    Génère un projet avec Spring Initializr et configure les fichiers de build Maven ou Gradle. C'est le point d'entrée pour chaque application Spring Boot créée dans le cours.

  • Leçon 4 • Fichiers de configuration et profils

    Gère les paramètres de l'application via application.properties et application.yml avec des profils d'environnement. Les profils permettent de basculer facilement entre les configurations de développement, test et production.

Chapitre 3Voir les détails

Injection de dépendances et noyau Spring

  • Leçon 1 • Annotations de stéréotype et scan de composants

    Utilise @Component, @Service, @Repository et @Controller pour enregistrer automatiquement les beans. Une utilisation appropriée des annotations renforce les limites architecturales dans les applications en couches.

  • Leçon 2 • Configuration basée sur Java

    Définit les beans de manière programmatique avec les méthodes @Configuration et @Bean. La configuration Java offre des alternatives type-safe et refactorisables au XML ou au scan d'annotations.

  • Leçon 3 • Portées et cycle de vie des beans

    Couvre les portées singleton, prototype, request et session ainsi que les callbacks de cycle de vie. Une sélection correcte de la portée empêche les fuites mémoire et les bugs de concurrence.

  • Leçon 4 • Inversion de contrôle et conteneur IoC

    Définit l'IoC et explique comment l'ApplicationContext gère les beans. Ce modèle mental est le fondement pour comprendre chaque composant Spring.

  • Leçon 5 • Modèles d'injection de dépendances

    Compare l'injection par constructeur, par setter et par champ avec des recommandations de bonnes pratiques. Choisir le style d'injection approprié améliore la testabilité et la clarté du code.

Chapitre 4Voir les détails

Construction d'API REST avec Spring MVC

  • Leçon 1 • Documentation API avec OpenAPI

    Génère une documentation API interactive en utilisant SpringDoc et la spécification OpenAPI. La documentation accélère l'intégration et sert de contrat pour les consommateurs.

  • Leçon 2 • Gestion des requêtes Spring MVC

    Mappe les requêtes HTTP aux méthodes du contrôleur en utilisant @RequestMapping et ses raccourcis. Cette section établit le cycle requête-réponse central à toutes les API REST.

  • Leçon 3 • Bonnes pratiques de conception d'API REST

    Applique la dénomination des ressources RESTful, la sémantique des méthodes HTTP et les conventions de code de statut. Des API bien conçues réduisent les erreurs des clients et simplifient le versioning.

  • Leçon 4 • Validation des entrées et réponses d'erreur

    Valide les corps de requête avec les annotations de Bean Validation et gère les erreurs globalement. Des réponses d'erreur cohérentes améliorent la convivialité de l'API et l'intégration des clients.

  • Leçon 5 • Corps de requête et de réponse

    Sérialise et désérialise JSON en utilisant @RequestBody, @ResponseBody et Jackson. Une gestion correcte du corps assure l'interopérabilité avec tout client REST.

Chapitre 5Voir les détails

Persistance des données avec Spring Data JPA

  • Leçon 1 • Migrations de base de données avec Flyway

    Gère l'évolution du schéma en utilisant des scripts de migration Flyway versionnés. Les migrations automatisées garantissent un état de base de données cohérent dans tous les environnements.

  • Leçon 2 • Dépôts Spring Data

    Utilise JpaRepository et CrudRepository pour générer automatiquement des méthodes d'accès aux données. L'abstraction des dépôts élimine le code DAO redondant.

  • Leçon 3 • Relations entre entités

    Modélise les associations un-à-un, un-à-plusieurs et plusieurs-à-plusieurs avec des options de cascade et de récupération. Un mappage correct des relations empêche les problèmes d'intégrité des données et les requêtes N+1.

  • Leçon 4 • Gestion des transactions

    Contrôle la cohérence des données avec @Transactional, les niveaux de propagation et d'isolation. Des limites de transaction correctes empêchent les lectures sales et les mises à jour partielles.

  • Leçon 5 • Entités JPA et mappage

    Mappe les classes Java aux tables de base de données en utilisant les annotations JPA. Une conception d'entité correcte est le fondement d'une couche de données fiable et performante.

Chapitre 6Voir les détails

Sécurité avec Spring Security

  • Leçon 1 • Autorisation et contrôle d'accès basé sur les rôles

    Restreint l'accès aux points de terminaison en utilisant @PreAuthorize, @Secured et les règles de sécurité HTTP. Une autorisation fine applique le principe du moindre privilège.

  • Leçon 2 • Authentification sans état basée sur JWT

    Implémente l'émission, la validation et le rafraîchissement des jetons en utilisant les JSON Web Tokens. JWT permet une authentification sans état et évolutive pour les API REST.

  • Leçon 3 • Configuration de l'authentification utilisateur

    Configure les magasins d'utilisateurs en mémoire et basés sur une base de données avec codage du mot de passe. Un stockage sécurisé des informations d'identification est une exigence de base pour toute application de production.

  • Leçon 4 • CORS, CSRF et en-têtes de sécurité

    Configure le partage des ressources entre origines (CORS), la protection CSRF et les en-têtes de sécurité HTTP. Ces paramètres défendent contre les vulnérabilités web courantes dans les clients basés sur navigateur.

  • Leçon 5 • Fondamentaux de Spring Security

    Explique la chaîne de filtres de sécurité, le gestionnaire d'authentification et le contexte de sécurité. Cette architecture sous-tend chaque fonctionnalité de sécurité ajoutée dans les sections ultérieures.

Chapitre 7Voir les détails

Test des applications Spring Boot

  • Leçon 1 • Tests de tranche de contrôleur avec MockMvc

    Teste les contrôleurs REST de manière isolée en utilisant @WebMvcTest et MockMvc. Les tests de tranche valident le mappage des requêtes, la validation et la gestion des erreurs sans un contexte complet.

  • Leçon 2 • Tests unitaires avec JUnit 5 et Mockito

    Teste les classes individuelles de manière isolée en utilisant les assertions JUnit 5 et les mocks Mockito. Les tests unitaires isolés s'exécutent rapidement et localisent les défauts à la source.

  • Leçon 3 • Tests de tranche de dépôt avec DataJpaTest

    Valide les requêtes JPA et les méthodes de dépôt en utilisant une base de données en mémoire. Les tests de la couche de données confirment la génération correcte de SQL et le mappage des entités.

  • Leçon 4 • Test des beans et services Spring

    Charge un contexte Spring partiel avec @ExtendWith(SpringExtension) et @MockBean. Les tests de la couche service vérifient la logique métier avec un câblage Spring réel.

  • Leçon 5 • Tests d'intégration et de bout en bout

    Exécute des tests de pile complète contre une base de données réelle en utilisant Testcontainers et RestAssured. Les tests d'intégration détectent les défauts inter-couches manqués par les tests unitaires et de tranche.

Chapitre 8Voir les détails

Déploiement et préparation à la production

  • Leçon 1 • Conteneurisation avec Docker

    Crée des images Docker optimisées en utilisant des JAR en couches et des builds multi-étapes. Les conteneurs standardisent l'environnement d'exécution et simplifient l'orchestration.

  • Leçon 2 • Journalisation structurée et traçage distribué

    Configure Logback pour des logs JSON structurés et ajoute des ID de trace avec Micrometer Tracing. Des logs et traces corrélés accélèrent l'analyse des causes profondes dans les systèmes distribués.

  • Leçon 3 • Empaquetage et exécution de l'application

    Construit des JAR et WAR exécutables et configure les options de démarrage JVM. Un empaquetage correct garantit que l'application s'exécute à l'identique sur toutes les cibles de déploiement.

  • Leçon 4 • Réglage des performances et mise en cache

    Applique l'abstraction de cache Spring, le réglage du pool de connexions et le traitement asynchrone. Ces optimisations réduisent la latence et augmentent le débit sous charge de production.

  • Leçon 5 • Observabilité avec Spring Boot Actuator

    Expose les points de terminaison de santé, de métriques et d'informations via Spring Boot Actuator. Les points de terminaison d'observabilité sont le fondement de la surveillance et des alertes en production.

Certification

Votre certificat valide de réussite

Ce cours est pour vous :

  • Développeur junior : souhaite aller au-delà des tutoriels pour entrer dans le travail réel d'ingénierie back-end.

  • Changement de carrière : transition d'un domaine non technique vers le développement logiciel à titre professionnel.

  • Diplômé en CS : possède la théorie académique mais manque d'expérience pratique de projet Spring Boot.

  • Développeur frontend : prêt à élargir ses compétences et à maîtriser l'ensemble de la pile applicative.

  • Programmeur amateur : construisant des projets personnels et visant une qualité de code professionnelle.

  • Ingénieur QA : cherchant des connaissances de développement plus approfondies pour évoluer vers un rôle de codage.

Ce que disent nos apprenants

Vos cours sont parfaits. J'ai acheté le forfait d'un an et j'ai enfin l'opportunité de suivre divers sujets qui m'intéressent sans avoir besoin de changer de plateforme... je vous remercie pour tout ce que vous faites, je vous ai déjà recommandés à d'autres personnes...
Giulio Carlo
Giulio CarloÉtudiant en Marketing Digital
J'aime la façon dont les leçons vont droit au but et comment je peux changer de chapitres et passer le contenu dont je n'ai pas besoin.
Mariana Ferres
Mariana FerresÉtudiante en Photographie
J'aime le contenu et la façon dont les vidéos sont présentées et transcrites, ce qui accélère le processus !
Luciana Alvarenga
Luciana AlvarengaÉtudiante en Design d'Ongles
La plateforme est rapide, simple à utiliser. La diversité du contenu et les vidéos complémentaires aident beaucoup dans l'apprentissage.
André Felipe
André FelipeÉtudiant en Ingénierie de Prompt

Formations principales

FAQ

Qui est Dedika ?

Le certificat est-il valable au Cameroun ?

Les cours sont-ils gratuits ?

Quelle est la charge de travail du cours ?

Comment sont les cours ?

Comment fonctionnent les cours ?

Quelle est la durée des cours ?

Quel est le coût ou le prix des cours ?

Qu'est-ce qu'un cours EAD ou en ligne et comment ça marche ?

Cours PDF