Nos domaines de formation :

Formation Framework Spring 4, développer des applications d'entreprise

4,3 / 5
Stage pratique
Durée : 5 jours
Réf : SDA
Prix  2018 : 2690 € H.T.
Pauses et déjeuners offerts
  • Programme
  • Participants / Prérequis
  • Intra / sur-mesure
  • avis vérifiés
Programme

Ce cours vous apprendra à utiliser le framework Spring 4 pour développer des applications Java plus robustes et plus efficaces. Vous verrez aussi comment faciliter, au moyen du framework, la configuration des différents composants de vos applications Web et la réalisation des tests, tout en réduisant vos efforts de développement.

Objectifs pédagogiques

  • Mettre en place Spring sur les différentes couches d'une application n-tiers
  • Mettre en place une façade Web REST et MVC
  • Assurer la persistance de vos données
  • Sécuriser votre application avec Spring Security
  • Coupler Spring à d'autres technologies de l'écosystème Java JEE

Méthodes pédagogiques

Support de cours (30%-40%), exercices (60%-70%). Un exercice " fil rouge " sera déroulé. Les différents modules seront validés par des tests unitaires (Junit) et seront déployés sur un serveur Apache Tomcat.
PROGRAMME DE FORMATION

Introduction

  • Les bonnes pratiques de conception : séparation des responsabilités, KISS, DRY, POJO.
  • Positionnement de Spring par rapport à la spécification Java EE et aux serveurs d'applications Java EE.
  • Les nouveautés par rapport à la version 3.

Présentation du conteneur Spring

  • Les technologies "core" : cycle de vie des objets, injection de dépendances et interceptions.
  • L'accès aux données : JDBC, JPA, Hibernate. La gestion des transactions.
  • Le Web : WebMVC et REST.
  • L'intégration aux autres technologies.
  • Les stratégies de déploiement : servlet container, serveur d'applications, TC Server, Cloud.
  • Au-delà de Spring Framework : Spring Data, Spring Batch...

L'environnement de travail

  • L'environnement Eclipse.
  • Le plug-in Spring Tool Suite (STS).
  • Les dépendances Maven.

Travaux pratiques
Installation de l'IDE et du plug-in Spring Tool Suite.

Découpage n-tiers, injection de dépendances et interceptions

  • Le découpage en couches, l'approche POJO.
  • La gestion de l'état : application stateful versus application stateless.
  • L'injection de dépendances par setter, par constructeur.
  • Les intercepteurs et la programmation orientée aspect, couplage avec AspectJ.
  • Les invocations asynchrones.
  • Les invocations planifiées (task et scheduling).
  • La configuration du conteneur (par annotations ou par XML), les profils.
  • Le test des beans managés : couplage avec JUnit, utilisation des Mocks.

Travaux pratiques
Mise en place d'une application n-tiers, utilisation de Spring comme factory pour gérer nos objets (cycle de vie, injection de dépendance, interception).

Accès aux données et gestion des transactions

  • Le couplage avec Spring JDBC et le JDBCTemplate.
  • Utilisation de bases de données embarquées : H2, HSQL, Derby.
  • Couplage avec l'API JPA et le framework Hibernate.
  • Le moniteur transactionnel de Spring, couplage avec JTA 1.2.
  • Le support des transactions au sein des tests.
  • Introduction à Spring Data pour les bases NoSQL.

Travaux pratiques
Mise en place d'entités persistantes dans un projet Java. Gestion par Spring du cycle de vie de l'entityManager JPA, utilisation du moniteur transactionnel de Spring et des annotations JTA.

IHM Web avec Spring MVC

  • Rappel du pattern MVC.
  • Le 2 ways binding à base de POJO.
  • Les vues : JSP et JSTL, Freemarker, Velocity, JasperReports...
  • La validation de surface avec JSR 303.
  • L'internationalisation.
  • La gestion des exceptions.

Travaux pratiques
Mise en oeuvre de Spring MVC au sein d'une application Web qui expose la couche métier développée précédemment.

Mise en œuvre de Web Services REST

  • Qu'est-ce qu'une URI ?
  • Rappels des bases du protocole http : les verbes, les codes de retours, les contentType, les en-têtes http.
  • Utilisation de Spring MVC pour mettre en place une application Web RESTFUL.
  • Cross Origin Shared Resource.
  • Utilisation de Spring cache pour mettre en cache les réponses des endpoints REST.
  • Mise en place d'une API découvrable avec HATEOAS.

Travaux pratiques
Développement d'une façade Web exposant les services développés précédemment, consommation des Web Services REST par un client html / javascript (utilisation d'angularJS).

Mise en œuvre des websockets

  • Les concepts du Web "real time".
  • Présentation de STOMP et SockJS.
  • Le support par les navigateurs, les mécanismes de fallback.
  • La mise en place côté serveur.
  • La mise en place côté client (HTML, iOS, Android).

Exercice
Ajout d'une connexion websocket au client html/javascript développé précédemment.

Eléments de sécurité

  • Présentation de Spring Security pour la gestion de l'authentification et des autorisations.
  • Création, chargement et récupération d'un contexte de sécurité.
  • Activation d'un filtre.
  • Création d'un formulaire de login.
  • Sécurisation des méthodes.
  • Application d'une stratégie de sécurité par aspects, par annotations.

Travaux pratiques
Mise en place de la sécurité avec Spring Security et couplage avec Spring MVC.

Intégration de Spring à d'autres technologies

  • L'enjeu posé par l'intégration entre Spring et des technologies tierces.
  • Le couplage entre Spring et JMX : managedResource et managedOperation.
  • Activation de la console Web JMX de Sun (HtmlAdaptorServer).
  • Exposition avec http Invoker.

Travaux pratiques
Supervision avec JMX, mise en place d'un endpoint avec http Invoker afin d'exposer les services développés précédemment.

Participants / Prérequis

» Participants

Développeurs Java/Java EE ayant une réelle expérience en développement d'applications Java/JEE.

» Prérequis

Bonnes connaissances de Java et Java EE.
Intra / sur-mesure
Programme standard     Programme sur-mesure
Oui / Non

Vos coordonnées

Avis vérifiés
picto avis vérifiés
RODRIGUEZ P. 16/04/2018
4 / 5
Le formateur est très accessible et à l'écoute. Il s'adapte aux besoins des élèves. Par rapport aux support je suggérerais des diapositives avec moins de texte, juste quelques mots clés et des schémas visibles (sur les diapositives imprimées c'était petit et flou)

François C. 16/04/2018
5 / 5
Très bien expliqué, avec beaucoup de détails sur tous les outils, ou notion évoqué dans les supports de cours. L'objectif et les étapes des exercices étaient parfois vague, mais n'en restait pas moins efficace

Steven S. 16/04/2018
5 / 5
Un cours très bon cours théorique qui a attaqué de multiples sujets liés à la technologie Spring. Par contre les exercices étaient un peu difficile à suivre sans énoncés détaillés. Formateur très pédagogue et à l'écoute pour résoudre les problèmes ou répondre aux questions.

Jerome C. 05/03/2018
4 / 5
Le rythme était trop élevé, certes le programme était chargé mais il aurait fallu aller moins viite. Ceci dit ce cours présente bien la puissance de Spring

Erwan A. 05/03/2018
4 / 5
Idée : Faire un tour de table en début de formation pour cibler exactement les attentes de chaque participant et adapter le contenu du cours en fonction.

Arnaud R. 05/03/2018
5 / 5
Contenu intéressant, en adéquation avec les besoins de l'entreprise.

Anaïs R. 05/03/2018
5 / 5
Le contenu est approprié et la pédagogie adaptée.

Nicolas I. 05/02/2018
5 / 5
Formateur très pédagogue

Wael H. 18/12/2017
4 / 5
Bonne formation

Olivier F. 18/12/2017
4 / 5
Les exercices nécessitaient de taper à la main une grande quantité de code qui aurait dû être fourni. Cela aurait fait gagner de nombreuses heures.

Pascal B. 18/12/2017
4 / 5
Beaucoup d'exercices reprenant les notions essentiel systématiquement => cela permet d'intégrer les concepts de façon pérenne. Bonne pédagogie.

Chafik R. 18/12/2017
5 / 5
Formation fluide. Beaucoup de choses vues. Un résumé disponible en fin de session serait un plus.

Soumiya O. 18/12/2017
5 / 5
Très bien détaillé, bonne écoute à nos questions.

Payman M. 18/12/2017
5 / 5
Faudra proposer le support de cours en PDF et non pas tout le temps en format Papier ! (suivant demande de personnes)

Stéphane B. 16/10/2017
5 / 5
Très bonne maîtrise du sujet et des exercices par le formateur.

Nahla C. 16/10/2017
5 / 5
J'ai appris beaucoup de chose lors de cette formations , mais y a quelques points qui étaient un peu trop détaillés . Je reviendrai sans doute pour d'autres formations :-)

Aurélien B. 16/10/2017
5 / 5
Bonne maitrise du sujet par l'animateur du cours

Pauline M. 25/09/2017
4 / 5
TRES BON FORMATEUR QUI A DE BONNES CONNAISSANCES DU SUJETS ET EST PEDAGOGUE. LE CONTENU DU COURS ETAIT TRES INTERESSANT ET COMPLET.PETIT POINT NOIR :BEAUCOUP DE FAUTES DANS LE SUPPORT ET LE LOGO orsys MANQUE PARFOIS QUELQUES PHRASES / LE RESTE EST TRES BIEN

Sébastien D. 25/09/2017
5 / 5
CONTENU RICHE ET INTERESSANT / ON CERNE BIEN L'ENSEMBLE DES SUJETS TRAITES

Nicolas K. 25/09/2017
5 / 5
PROGRESSION PEDAGOGIQUE COHERENTE / MAITRISE DU SUJET PAR LE FORMATEUR / DISPONIBILITE DU FORMATEUR ET CAPACITE D'ADAPTATION PERMETTANT DE FAIRE EVOLUER LE CONTENU DE LA FORMATION AUX BESOINS DE NOTRE ENTREPRISE

Emmanuel V. 25/09/2017
5 / 5
TRES BON RYTHME DE FORMATION / SUJET PRESENTE DE MANIERE INTERESSANTE

Ludovic M. 25/09/2017
5 / 5
L'ALTERNACE THEORIE/PRATIQUE PERMET DE BIEN S'APPROPRIER DES NOTIONS. cONTENUE ET PEDAGOGIE DE QUALITE GRACE AUX CONNAISSANCES DU FORMATEUR

Alexandre P. 25/09/2017
5 / 5
DANS LE CLASSEUR LES PAGES POURRAIENT ETRE PRISE DE FACON A CE QUE L'ON AIS PRIS A RETOURNE LE CLASSEUR

Vincent F. 25/09/2017
5 / 5
FORMATION COMPLETE ET FORMATEUR IMPLIQUE

Saad M. 21/08/2017
4 / 5
Bonne pédagogie mais les exercices devraient être plus préparés pour éviter les pertes de temps inutiles.

Philippe A. 21/08/2017
4 / 5
Très bonne animation Il serait pas mal de fournir la source de certains exercices (même incomplet) pour que l'on puisse se concentrer sur les concepts aborder plutôt que de taper certaine ligne de code "inutile" à la compréhension du concept => perte de temps et de concentration

Xavier K. 21/08/2017
5 / 5
formation très intéressante, formateur très compétent
Avis client 4,3 / 5

Les avis client sont issus des feuilles d’évaluation de fin de formation. La note est calculée à partir de l’ensemble des avis datant de moins de 12 mois.

Dates de sessions

Pour vous inscrire, cliquez sur la session qui vous intéresse.
[+]
LUXEMBOURG
[+]
AIX
[+]
ANGERS
[+]
BORDEAUX
[+]
BRUXELLES
[+]
DIJON
[+]
GENEVE
[+]
GRENOBLE
[+]
LILLE
[+]
LIMOGES
[+]
LYON
[+]
MONTPELLIER
[+]
NANCY
[+]
NANTES
[+]
ORLEANS
[+]
PARIS
[+]
RENNES
[+]
ROUEN
[+]
SOPHIA-ANTIPOLIS
[+]
STRASBOURG
[+]
TOULOUSE
[+]
TOURS

Horaires

Les cours ont lieu de 9h à 12h30 et de 14h à 17h30.
Les participants sont accueillis à partir de 8h45.
Pour les stages pratiques de 4 ou 5 jours, les sessions se terminent à 15h30 le dernier jour.