Formation Spring : Développer avec le framework Spring Développer facilement des applications d'entreprise Java EE avec Spring Framework

4.5 sur 5 étoiles

5 étoiles
48%
4 étoiles
51%
3 étoiles
0%
2 étoiles
0%
1 étoile
0%
Voir les 35 avis
(35 avis)
Durée 3 jours
Niveau Intermédiaire
Classe à distance
Possible

Vous pouvez suivre cette formation en direct depuis votre domicile ou votre lieu de travail. Plus d'informations sur notre solution de classe à distance...

Référence SFSG
Éligible CPF Non

Spring est actuellement le framework Java le plus utilisé pour le développement d'applications d'entreprises. Il a toujours offert une alternative à la complexité de Java EE. Ses atouts : augmenter la productivité du développeur, faciliter les tests, améliorer les performances, faciliter l’intégration de technologies.

Spring est construit principalement autour de trois designs patterns clés : l'inversion de contrôle ou injection de dépendance, la programmation orientée aspect et des couches d'abstraction identifiant tous les besoins d’une application d’entreprise (Persistance, Messaging, Sécurité, Tracing, etc.).

Cette formation Spring démarre par une revue en profondeur des concepts de bases du framework Spring. Ce chapitre primordial permet de démystifier l’aspect magique de Spring et de comprendre les mécanismes sous-jacentes utilisées dans les chapitres suivants. Ensuite, chaque chapitre est consacré aux différentes couches logicielles des applications développées actuellement en entreprise, la persistance des données, la couche web, la sécurité et le test. Les mécanismes d’auto-configuration apportés par SpringBoot, l’accélérateur de projet Spring, sont détaillés dans chaque chapitre.

Objectif opérationnel : 

Savoir maîtriser l'écosystème Spring/SpringBoot et acquérir les bonnes pratiques de développement d'applications d'entreprises avec ce framework.

Objectifs pédagogiques : 

À l'issue de cette formation Spring, vous aurez acquis les connaissances et compétences nécessaires pour :

  • Comprendre les apports du framework Spring (IoC, AOP, ...)
  • Savoir mettre en place une IDE productif et bonnes pratiques de développement
  • Savoir gérer la configuration des propriétés et des composants d’une application
  • Être capable d’implémenter toutes les couches d’une application Web d’entreprise (Web/Rest, Service, Accès aux données…)
  • Savoir mettre en œuvre la sécurité au sein de son développement Spring
  • Savoir mettre en œuvre des tests avec Spring

Public :

Ce cours s’adresse aux développeurs Java souhaitant utiliser le framework Spring pour faciliter le développement et les tests de leurs applications. Sont aussi concernés les architectes Java SE / Java EE ayant à penser l’infrastructure des applications Java d’entreprise.

Prérequis :

Les participants doivent disposer d’une bonne connaissance de Java concrétisée dans un ou plusieurs projets professionnels. Pour profiter pleinement de tous les chapitres, ils doivent être sensibilisés aux problématiques web, d’accès aux données (persistance) et de tests d’application.

Introduction au framework Spring

La genèse du projet, son positionnement vis à vis de Java EE
L’offre de Pivotal Software, les cas d’usage du framework, les 10 commandements d’un projet Spring
IoC et l’injection de dépendance : Le design pattern au cœur du framework
Les types d’injections supportés par Spring 
Spring :en tant qu’Usine à Bean, de conteneur léger
Comment configurer le framework : XML, annotations, l’auto-configuration avec Spring Boot

Spring Cœur

Spring : Un conteneur légerParcours des APIs BeanDefinition, BeanFactory et ApplicationContext
Le cycle de vie des beans 
L’interface Environment : propriétés de configuration et profils
Les autres fonctionnalités coeur : SpEl, Messages, Chargement de ressources
Spring et les annotationsConfiguration via annotations. @Configuration et @Bean
@Component et ses différents stéréotypes
Injecter des dépendances via les annotations : @Autowired, @Resource, @Inject
L’injection implicite par constructeur
Annotations pour les profils, leur cas d’usage, les modes d’activation
Spring AOPLes concepts de l'AOP, les problèmes résolus pas l’AOP
La terminologie utilisée : aspect, joinpoint, advice, shortcut, weaving
Les différents types d' « advice » : around, before, throws, after
Quel est le support de l’AOP dans Spring ?
Configuration XML, bénéfices/inconvénients
Intégration avec le framework @AspectJ, l’AOP via les annotaions
Ateliers 1, 2 et 3 (à titre indicatif)Objectifs :
Démystifier Spring et visualiser le mécanisme d’IoC à l’aide de code Java très simple
Maîtriser la configuration via les annotations
Comprendre la technologie AOP et son utilisation par le framework
Description :
Développement de 2 beans, configuration XML
Tracing du cycle de vie des beans
Reprise de la configuration via des annotations
Mise en place de 2 profils (jdbc et csv)
Développement d’un aspect @Profilable

Spring Boot

Le principe de l’auto-configuration, application à Java
Comment démarrer ? Spring Initializr et les starters disponibles
Un unique fichier : Gestion des propriétés de configuration
Assistance de L’IDE Spring Tools Suite
Atelier 4 (à titre indicatif)Objectifs :
Comprendre le mécanisme d’auto-configuration et ses apports
Prendre en main toutes les facilités apportées par l’IDE STS
Description :
Création d’une application web via l’assistant 
Assistance de l’éditeur pour la configuration de l’application
Configuration du trace
Exécution en mode DEBUG

Spring Data et l'accès aux données (JDBC / Hibernate / JPA / NoSQL)

L’objectif de Spring Data, les abstractions Repository et CrudRepository
Les alternatives pour le requêtage des objets du domaine
Application à JPA : Spring Data JPA
Les classes de support fournis : JdbcTemplate, HibernateTemplate
Comment gérer les transactions, l’annotation @Transactional
Les apports de l’auto-configuration SpringBoot pour configurer les DataSource
Application à NoSQL : Spring Data MongoDB
Requêtage et classe de support
Les apports de l’auto-configuration SpringBoot, Un MongoDB embarqué
Ateliers 5 et 6 (à titre indicatif)Objectifs
Comprendre les apports de l’abstraction SpringData
Comprendre les alternatives pour l’implémentation de la persistance avec Spring
Description :
Récupération des classes modèles du domaine
Déclaration d’interface JpaRepository et utilisation lors de test
Implémentation d’une transaction métier dans un bean @Service
Implémentation d’un MongoDbRepository et utilisation lors de test

Applications Web avec Spring MVC

Spring MVC pour les applications WebRappels du pattern architectural MVC, implémentation dans Spring 
Comment écrire un contrôleur Spring ?
L’auto-configuration SpringBoot et sa personnalisation avec WebMvcConfigurer
Résolution des vues, l’exemple de Thymeleaf, 
Gestion des locales et des thèmes, traitements des exceptions, Page d’erreur
Spring MVC pour les APIs RESTFulLes spécificités des contrôleurs REST
Configuration typique : le CORS
Ne pas négliger la sérialisation JSON : Personnalisation via les annotations de la librairie Jackson
Documenter automatiquement son API avec SpringDoc et OpenAPI
Interroger une API Restful avec la classes de support RestTemplate
Ateliers 7 et 8 (à titre indicatif)Objectifs
Comprendre les rôles des controllers de SpringMVC
Implémenter une API Rest et publier sa documentation via OpenAPI
Développer un client REST
Description :
Implémentation de la séquence web, affichage puis POST de formulaire
Implémentation des fonctionalités CRUD dans un RestController
Gestion centralisée des exceptions
Mise en pace SpringDoc et test de l’API via Swagger
Développement d’un client REST

Spring Security

Les apports de SpringSecurity et Concepts de base
L’auto-configuration de SpringBoot, les filtres de protection
Les différentes alternatives pour l’authentification, l’objet SecurityContext
La sécurité Web via le bean SpringSecurityFilterChain, comprendre sa configuration, savoir debugger la sécurité
GrantedAuthoriry vs Role
Mise en place : Sécurité stateful ou sécurité Stateless ?
Le protocole oAuth2 et le standard JWT
Le support d’oAuth2 dans Spring5
Protection de la couche métier, mécanisme et mise en place
Ateliers 9 et 10 (à titre indicatif)Objectifs
Comprendre les deux approches de la sécurité : Stateful et Stateless
Savoir configurer le filtre securityFilterChain
Comprendre le support de Spring pour oAuth2
Description :
Activation de la sécurité et configuration par défaut
Définition des ACLs d’une sécurité stateful
Utilisation d’un gestionnaire d’authentification personnalisée
OpenID/oAuth2 : « Se connecter avec Google »
oAut2Resource : Définition des ACLs par rapport à un Jeton oAuth

Spring et les tests

Les apports de Spring-test , Le contexte SpringBoot
L’annotation @SpringBootTest, quel est le mécanisme de détection de configuration, les cas d’usages qui en résultent
Mocking des beans : souvent deux usages
Tests d’intégration par couche avec les test auto-configurés,
Tester une API sécurisée par SpringSecurity
Atelier 11 (à titre indicatif)Objectifs
Comprendre les intentions des tests système et des tests d’intégration
Savoir tester en isolation toutes les couches d’une application web
Description :
Test couche persistance
Test sérialisation Json
Test couche contrôleur
Test système complet

Déploiement des applications Spring

Pour les Ops : le starter actuator 
Se préparer pour la production, l’objectif build-info du plugin Maven
Les différents format de packaging, le support du plugin Maven ou Gradle
La SISE en service d’application SpringBoot
Création d’une image docker, document manifest kubernetes typique
Atelier 12 (à titre indicatif)Objectifs
Savoir construire un package pour la production
Comparer les alternatives de déploiement 
Description :
Mise en place actuator, configuration Maven
Création d’exécutable jar et exécution
Création image docker et exécution
Date de mise à jour du programme : 26/06/2024

Dates et lieux

Du 04 au 06 septembre 2024
Lieu
Distanciel
Durée
3 jrs
1690 € HT
Du 04 au 06 septembre 2024
Lieu
Paris
Durée
3 jrs
1690 € HT
Du 04 au 06 décembre 2024
En bonne voie de maintien
Lieu
Distanciel
Durée
3 jrs
1690 € HT
Du 04 au 06 décembre 2024
En bonne voie de maintien
Lieu
Paris
Durée
3 jrs
1690 € HT

Avis des participants à la formation Spring : Développer avec le framework Spring

Note moyenne de 4.5/5(35)

Les avis figurant ci-dessous sont issus des fiches d’évaluation que remplissent les participants à la fin de la formation. Ils sont ensuite publiés automatiquement si les personnes ont explicitement accepté que nous les diffusions.

HOUEL Maxime
5/5

Mon avis sur le formateur :

"L'animateur est très sympathique et surtout très compétent et pédagogue. Il s'est parfaitement adapté à nos demandes et contraintes en cette période de télétravail."

Mon avis sur la salle de formation :

"Formation à distance, les outils utilisés sont suffisamment performants pour répondre à cette contrainte."

NGUYEN Aurélien
4/5

Mon avis sur le contenu du stage :

"Support clair et suffisamment précis vu l'étendu du framework"

Mon avis sur le formateur :

"Sympathique et professionnel, toujours à l'écoute et clair dans ses explications"

Ce que j'ai le plus apprécié :

"Salle de repos accueillante"

CARRERE Laurine
5/5

Mon avis sur le contenu du stage :

"Bon équilibre entre théorie et pratique."

Mon avis sur le formateur :

"Le formateur a su être pédagogue et répondre à toutes nos questions."

Ce que j'ai le plus apprécié :

"Équilibre théorie pratique."

GF
4/5

Mon avis sur le formateur :

"L'animateur a du s'adapter au mieux, malgré une formation qui aurait du être plus longue (5j java+3j Spring au lieu de 2j ) , du à une non prise des pré-requis par ma hiérarchie. Je me sens en fait partiellement opérationnelle, du fait de la durée courte de la formation, qui n'est pas du à PLB ou au formateur."

NJIOKOU NGOGANG Frédric
5/5

Mon avis sur le formateur :

"Très bonne connaissance de Springde la technologie et de tout l'écosystèmeJava"

Mon avis sur la salle de formation :

"Bonne formation"

Ce que j'ai le plus apprécié :

"échange avec l'intervenant"

LB
5/5

Mon avis sur le contenu du stage :

"complet "

Mon avis sur le formateur :

"connaît très bien le sujet pédagogue"

Ce que j'ai le moins apprécié :

"utilisation de guacamole: un peu lent et copier/coller un peu lourds"

Grégoire
4/5

Mon avis sur le formateur :

"Très disponible, a répondu avec brio à toutes mes questions"

Mon avis sur la salle de formation :

"Excellent"

Ce que j'ai le plus apprécié :

"None"

AX
4/5

Ce que j'ai le plus apprécié :

"Le formateur est à l'écoute et nous aide au besoin durant les tp"

Ce que j'ai le moins apprécié :

"La connexion avec la vm se coupe quelquefois, il suffit juste de recharger la page."

BENCHADLIA Achrafe
4/5

Mon avis sur le contenu du stage :

"La formation m'a permis de bien comprendre Spring. Dommage qu'on n'ai pas eu le temps de voir Spring DAO avec des exercices et Spring WeB notamment. "

Mon avis sur le formateur :

"très bien"

KT
4/5

Mon avis sur le contenu du stage :

"On a pas pu finir tous les chapitres la partie vue est bien assimilé.mais il manque la partie Spring batch que j'attendais"

Mon avis sur le formateur :

"Excellent"

Idir MOHELLEBI
5/5
Mon avis sur le contenu du stage: Tout était excellent Mon avis sur le formateur: Excellent intervenant Mon avis sur la salle de formation: Excellent environnement Ce que j'ai le plus apprécié: L'accueil et l'état des lieux et du matériel Ce que j'ai le moins apprécié: aucun.
RM
4/5

Mon avis sur le contenu du stage :

"Formation très riche. Peut-être un peu trop pour seulement 2j"

Ce que j'ai le plus apprécié :

"Adobe Connect"

PERRAUD Freddy
5/5

Mon avis sur le contenu du stage :

"Très bonne formation."

Mon avis sur le formateur :

"Formateur très compétent."

Geraldine
5/5
Mon avis sur le contenu du stage: Le contenu est étudié. Mon avis sur le formateur: Très bonne approche du framework Spring, technicité irréprochable. Pédagogie à toute épreuve. Mon avis sur la salle de formation: Bonne machine
VA
5/5

Mon avis sur le formateur :

"L'utilisation du tableau interactif donne du rythme à la formation. j'ai beaucoup apprécié les schémas en direct. "

TJ
5/5

Mon avis sur le contenu du stage :

"Super mais j'ai pas réussi certains exercices"

AP
5/5

Ce que j'ai le plus apprécié :

"Les TP et la pédagogie"

ME
5/5
GC
4/5
BJ
5/5
GM
4/5
CN
5/5
DF
4/5
LGM
4/5
RL
5/5
SC
5/5
BM
4/5
LM
4/5
RC
5/5
QG
4/5
TY
4/5
RO
4/5
ABIDI Mohamed Anis
4/5
RD
5/5
KA
4/5


Formations Informatique
et Management
en ligne à ce jour

+
Stagiaires dans nos salles
de cours sur
l'année

%
De participants satisfaits
ou très satisfaits de nos
formations


Formateurs experts
validés par
PLB