Maîtriser Spring

Présentation

DVSPR
5 jours ( 35 heures )
Présentation
Cette formation vous permettra de voir les concepts clés autour desquels s'articule Spring .
Objectifs du cours

Cette formation permet aux participants d'acquérir les compétences et connaissances nécessaires pour concevoir des architectures applicatives modulaires et faiblement couplées. 

Pré-requis
Maîtrise du développement Web Java EE. Des notions sur Struts et Hibernate sont un plus.

Programme

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.





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 vs 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.





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.



 

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.





Mise en oeuvre 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 Ressource.

Utilisation de Spring cache pour mettre en cache les réponses des endpoints REST.

Mise en place d'une API découvrable avec HATEOAS.





Mise en oeuvre 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).





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.





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.



Partager cette formation

 

Contactez-nous

contactez logware

Vous êtes intéressé par cette formation ou souhaitez simplement obtenir des informations complémentaires ?

+33 1 53 94 71 20

Écrivez-nous on vous rappelle

  1. Nom*
    Merci de saisir un nom valide
  2. Prénom*
    Merci de saisir un prénom valide
  3. E-mail*
    Merci de saisir une adresse email valide
  4. Téléphone*
    Numéro de téléphone invalide
  5. Entreprise
    Donnée invalide

Parce que nous comprenons la nécessité d'obtenir un enseignement qui permettra à votre équipe d'atteindre vos objectifs, nous restons flexibles et sommes capables d'adapter nos programmes de formation à vos besoins.

> En savoir plus