Développement d'applications Web avec Spring 4

La promesse du Framework Spring est de « permettre le développement d’applications Java de manière simple, rapide, portable et flexible ». Passé au statut de standard au fil des différentes versions, il s’impose aujourd’hui comme le meilleur outil pour développer une application web en Java.

Objectifs :

  • D’augmenter votre productivité pour le développement d’application Web
  • De maitriser les fondements du framework Spring (injection et IoC)
  • De comprendre la configuration du conteneur Spring
  • D’utiliser Spring Data pour interroger une base de données
  • D’ajouter des contrôles d’accès à votre application
Publics
Developpeurs Java, Architectes Java.
 
Taille du groupe : ≤10 pers.
Durée

3 jours.


60% de pratique,
40% de cours.
Pré-requis

Connaissances Java et Maven Notions de base en développement web.

Contenu pédagogique :

Introduction

  • Concepts
  • Le positionnement de Spring
  • Ecosystème
  • Historique de Spring Framework

Concepts

  • La notion de conteneur léger
  • Solutions au problème de couplage
    • Injection de dépendances
    • Inversion de contrôle

Spring Core

  • Conteneur IoC de Spring
  • Injection de dépendances (Annotations Java)
  • Cycle de vie des bean (scopes)
  • Profil et environnement
  • Propriétés et configuration
  • Propriétés externalisées

Spring AOP

  • La programmation Orientée Aspect (AOP)
  • Principes de base et intérêt de l'AOP
  • Les concepts clés (Pointcut, Advice, JoinPoint)
  • Le module Spring AOP et sa mise en oeuvre

Spring Boot

  • Auto-configuration
  • Principe des projets « starter »
  • Autres apports

Spring Web

  • Principes
  • Mise en oeuvre de contrôleurs
  • Exposer un Webservice REST
  • Gestion des exceptions
  • Validation des données

Accès aux données

  • La prise en charge de JDBC dans Spring
  • Le mapping Objet/Relationnel avec Spring
  • Spring Data
    • Repository
    • Pagination et tri
    • Personnalisation des requêtes
  • Les transactions dans Spring
    • Les niveaux d'isolation de transaction
    • La gestion des transactions par déclaration
    • Les annotations sur les classes et méthodes
  • Alternatives aux query methods
    • Specifications JPA
    • Querydsl

Spring Security

  • Basic Authentication
  • Contrôles d’accès

Conclusion