Maîtrisez par la pratique l’injection de dépendances, premier des deux concepts techniques clés du framework Spring ; le deuxième concept clé étant la programmation orientée aspect.
Objis, spécialiste de la formation Java, est heureux de vous offrir ce tutoriel, extrait de séances pratiques de la formation SPRING dispensée par Objis.
Les + objis
70% de travaux pratiques
Clé USB avec tous les outils utilisés + Corrigés TPs
Bilan pédagogique individuel + conseils
+ de 100 tutoriaux java/jee Objis
10 tutoriaux spring framework objis
Objis, spécialiste formation java depuis 2005
Site officiel Spring IDE
Site officiel Spring Source Tool Suite (STS)
JDK 6
Eclipse 3.3.2 europa Entreprise
Spring 2.5.4
Spring IDE 2.1.0
Pour ce Tutoriel, le plugin Eclipse Spring IDE doit être au préalable correctement installé. Le tutoriel ’Installation plugin Spring IDE’ vous permet de maîtriser l’installation de Spring IDE.
Déclarer dans le conteneur Spring des javabeans indépendants
Comprendre le chargement du conteneur Spring
Mettre en œuvre l’injection de dépendances
Utiliser les vues eclipse du plugin Spring IDE, dont la vue graphe.
Partie 1 : création projet Spring avec Spring IDE
Partie 2 : codage des beans
Partie 3 : création fichier définitions de beans
Partie 4 : déclaration des beans dans le conteneur spring
Partie 5 : librairies du projet spring
Partie 6 : vues Spring eclipse
Partie 7 : client
2h.
Dans cette partie, vous créez un ’projet Spring’ à l’aide du plugin eclipse Spring IDE. Le plugin ajoute à Spring des vues utiles au développeur Spring (voir partie 6).
Dans Eclipse, File/New/Other

Choisir Spring/Spring project

Nom du projet : springide-demo. Laissez les autres options par défaut (en particulier, source ).

REMARQUE : le ’S’ en bleu à gauche du projet signifie que c’est un projet Spring. C’est la marque de projet Spring ou de projets ayant acquis des ’Capacités Spring’.

REMARQUE : lorsque vous souhaitez donner à un projet non Spring des ’capacités Spring’, cliquez droit sur le projet puis ’Spring Tools/Add Spring Project Nature’.

Dans cette partie, vous crééz deux Javabeans indépendants l’un de l’autre.
Dans le projet ’spring-demo’, créez un package com.objis.spring.demo
Création du bean Developpeur
Créez la classe Developpeur, comme ci-dessous

INFO : Après la déclaration des attributs ’nom’ et ’anneesExperience’, cliquez droit sur le source puis /Source/generate Getters and Setters pour terminer la création de la classe.
Création du bean SocieteDevLogiciel
Créez la classe SocieteDevLogiciel, comme ci-dessous

File/New/Other/Spring/Spring Bean Definition

donnez le nom demo-beans.xml au fichier de définition de beans. Puis appuyez sur le bouton ’Next’.

Le Wizard inclus par défaut la définition du schéma XSD associé à l’élément racine (beans) de tout fichier de définition de beans Spring.

REMARQUE : vous pouvez choisir ici d’autres définitions, suivant le besoin de votre application. Par exemple, si vous configurez des transactions dans votre application, vous ajoutez et cochez la case ’tx’.
De même, si vous utiliser des artifices de programmation par aspect (voir TP ’Programmation Orientée Aspect’), vous aurez alors besoin de cocher ’aop’.
Enfin c’est ici qu’apparaîtront d’autres définitions si vous ajoutez d’autres extensions (Ex : flow, osgi)
Ne cochez rien pour le moment. Cliquez sur Next

Cliquez sur Finish. Eclipse génère alors les lignes suivantes dans le fichier demo-beans.xml

Editeur XML et complétion de code
Il est possible de déclarer des beans soit graphiquement, soit par programmation.

Créez une balise <

Testez la completion de code avec la combinaison de touches Ctrl + Espace pour l’attribut ’class’

puis pour la propriété ’name’

Remarquez les 2 façons ( attribut ou balise) de déclarer une propriété du bean.

A VOUS DE JOUER : Déclarez dans le même fichier de configuration demo-beans.xml un deuxième développeur nommé Franck, plus expérimenté qu’Olivier (10 ans d’expérience) et possédant dans le conteneur Spring un id=’chefDeveloppeur’.
A VOUS DE JOUER : Déclarez dans le même fichier de configuration demo-beans.xml une société de développement logicielle possédant les 2 développeurs déja déclarés, et possédant un id=’societeDevLogiciel’. Utilisez l’attribut ’ref’ de la balise bean en pointant sur l’id de chacun des beans.
Pour démarrer un projet spring minimal, 3 dépendances sont à ajouter , et qui se trouvent dans le zip spring-framework-2.5.4-with-dependencies.zip , à dézipper :

spring.jar : le framework spring
se trouve dans \spring-framework-2.5.4\dist\spring.jar
commons-logging.jar : Interface de log (Log4j en a besoin)
se trouve dans \spring-framework-2.5.4\lib\jakarta-commons\commons-logging.jar
log4j : célèbre framework de Log
\spring-framework-2.5.4\lib\log4j\log4j-1.2.15.jar
Configuration du build Path dans Eclipse


configuration log4j
Créer à la racine ’src’ le fichier log4j.xml

La vue ’Explorateur Spring’
Faîtes apparaître la vue Explorateur Spring


Cette vue permet de voir en un coup d’œil l’ensemble des beans du conteneur Spring. Il s’agit de l’ensemble des beans du/des fichiers de configuration de spring.
Vue Spring Explorer avec le bean Developpeur

Ajout du module Spring AOP
Si vous avez ne l’avez pas déjà fait, installez l’extension Spring AOP de Spring IDE. Voir TP1 ’Installation du Spring IDE’
Voir la vue ’Cross reference’ Si vous avez ne l’avez pas déjà fait, installez l’extension Spring AOP de Spring IDE. Voir TP1 ’Installation du Spring IDE’

Cette extension permet d’avoir accès à une vue ’Cross Reference’ (références croisées entre beans).

Cliquez sur le bouton ’Link open editors with content in the Navigator’ pour synchroniser la vue avec éléments édités.

Cliquez ensuite quelque part sur le fichier demo-beans.xml (sur une définition de bean, ou alors sur ligne vide). La vue se synchonise avec votre clic. Voici par exemple une vue des différents beans.

Voir la vue Graphe
Cliquez droit sur le fichier de définition
Cliquez sur ’Open Graph’

Vous obtenez la vue en graphe suivante

Crééz la classe Principale ’DemoApp’ et mise en évidence de l’injection

Résultat
Après clic droit/Run as/ Java Application, vous obtenez sur la console ceci :

QUESTION : expliquez les lignes de code de la fonction main(). En particulier, mettre en évidence les 3 étapes suivantes :
— 1.Chargement du conteneur Spring
— 2.Récupération d’un bean du conteneur
— 3.Utilisation du bean avec injection de dépendances
Dans ce tutoriel, vous avez pratiqué la mise en œuvre du concept clé N°1 de Spring :l’injection de dépendances.
L’étape suivante de votre apprentissage Spring : mettre en œuvre le concept clé N°2 de Spring : la programmation orientée aspect.
C’est l’objectif principal de notre tutoriel Spring N°3 : programmation orientée aspect avec Spring AOP.
Le chemin le plus court pour avoir les réflexes et la méthodologie du bon développeur Spring :
Si vous appréciez notre sens du partage, devenez gratuitement membre ’classic’ du Club Objis :
Votez pour les prochains tutoriaux à publier
Préparez vos entretiens techniques
Valorisez votre profil / expertise
Identifiez des opportunités d’emploi
Recevez la newsletter objis.com