Formation aux technologies de l'informatiqueformation java

Développer une application JEE avec Spring Framework

FJ310
Prix inter : 2250 € HT Durée: 5 jours
Prix intra*: 5950 € HT
* jusqu'à 8 personnes
Public
Public : développeurs, chefs de projet, architectes
Niveau : expert
Prochaines sessions
Nous contacter au 06 68 36 54 43 ou par mail
Description

Spring est désormais un framework incontournable dans le domaine du développement JavaEE. Il simplifie la mise en oeuvre de fonctionnalités techniques telles que la gestion transactionnelle, tout en autorisant une configuration souple des composants développés. La version 2 vise à encore plus de simplicité de développement grâce à l'utilisation des annotations comme alternative à la configuration XML.

Ce cours vous permettra d'assimiler les principes fondamentaux de Spring Framework (IoC, AOP, gestion transactionnelle, Spring MVC, Spring Security, SWF), et de manipuler les technologies importantes du développement JEE dans un contexte Spring (Struts, JSF, Hibernate, Web Services RESTful). Par ailleurs, ce cours traite des évolutions apportées par Spring 2.0 / 2.5 et aborde les nouveautés de Spring 3.

Pré-requis
Les participants doivent connaître les langages Java, SQL et HTML. La connaissance de XML et des spécificités Java 5 est un plus.
Programme
  • Les principes fondamentaux de Spring Framework

    • Présentation de la notion de conteneur léger dans le cadre d'un développement JavaEE
    • Intérêt du design pattern Inversion de Contrôle (IoC) et des techniques AOP
    • Mise en oeuvre du conteneur Spring avec l'ApplicationContext
    • La configuration des composants par XML et par annotations
    • Les différentes techniques d'injection des dépendances avec Spring
    • Cycle de vie des beans Spring : portée des beans et méthodes de callback
    • Notion de post-processeur : exemple d'utilisation pour externaliser des propriétés de configuration
    • Les apports de Spring 3 en matière de configuration
  • Couche de persistance et gestion transactionnelle

    • Le modèle de programmation d'accès aux données : traduction des exceptions, classes de support et classes template
    • Ecrire des classes DAO avec Spring JDBC. Cas des clés auto-générées, fonctionnalités Java 5
    • Utiliser Spring pour simplifier le développement Hibernate : les différentes stratégies
    • La notion de propagation des transactions entre services métier
    • Gestion déclarative des transactions par configuration XML et par annotations
  • Construction d'applications web avec Spring Framework

    • Configuration et instanciation du contexte Spring dans un environnement web
    • Utiliser des composants métier Spring depuis une application Struts ou JSF
    • Principe et mise en oeuvre de Spring MVC
    • La notion de view resolver
    • La taglib "form" pour développer des formulaires
    • Utiliser les annotations pour configurer les controllers
    • Les nouvelles annotations de Spring 3
    • Implémenter des flux d'écrans avec Spring Web Flow 2
  • Gérer la sécurité des applications avec Spring Security

    • Présentation et principe de Spring Security 2 (Acegi)
    • Configurer la chaîne de filtre pour sécuriser une application web
    • Formulaire de login personnalisé, gestion du logout, authentification anonyme, fonction "remember me"
    • Améliorer la protection de l'application par cryptage des mots de passe
    • Personnaliser la persistance des données d'authentification et d'habilitation
    • Utiliser la taglib de Spring Security dans les JSP
  • Ecrire des composants AOP

    • Définitions et concepts de la programmation AOP
    • Définir des Poincuts, Advices et Aspects pour créer ses propres modules AOP
    • Créer des proxys pour appliquer un aspect à un composant Spring
    • Configuration par XML et par annotations AspectJ
  • Développer des Web Services RESTful avec Spring MVC

    • Principe du Representational State Transfer
    • Mise en oeuvre d'un service REST avec Spring MVC
    • Invoquer un service REST à l'aide de RestTemplate
    • Gérer la négociation du type de contenu
    • Les techniques de sérialisation
  • Tester les composants d'une application Spring

    • Les bonnes pratiques de conception pour les tests
    • Utiliser des ressources autonomes et des objets de mock
    • L'intégration de JUnit et TestNG
Travaux Pratiques
Les travaux pratiques sont réalisés avec Spring 3, Eclipse, Tomcat et MySQL. Les exercices vous donneront l'occasion d'écrire des composants Spring que vous testerez avec JUnit, et intégrerez à des mini-applications web (Struts, JSF) et Swing qui vous seront fournies.
Intervenants
Olivier Hanny
Olivier est un spécialiste des technologies Java / JEE depuis l'année 2000, après une carrière d'ingénieur dans la sidérurgie. Il est aujourd'hui consultant indépendant, et partage son temps entre des missions de réalisations informatiques (Java, Flex) et l'animation de formations.