Projet sur Framework Spring

Download Report

Transcript Projet sur Framework Spring

1
Projet sur Framework
Spring
Présenté par :
Ouadhour mohamed el hedi
Ben Smida Sami
Aouidet Karim
2
Plan :
I.
II.
III.
IV.
V.
VI.
Définition d’un Framework
Présentation de Spring
Le but et les fonctionnalités
Avantages et inconvénients
Exemple de Spring
Conclusion
3
Définition d’un Framework
• Framework est un espace de travail
modulaire. C'est un ensemble de bibliothèques
et de conventions permettant le développement
rapide d'applications. Il fournit suffisamment de
logicielles et impose suffisamment de rigueur
pour pouvoir produire une application aboutie et
facile à maintenir. Ces composants sont
organisés pour être utilisés en interaction les uns
avec les autres
4
Présentation de Spring framework
• Spring est un framework libre pour construire
et définir l'infrastructure d'une application java,
dont il facilite le développement et les tests.
• Il est effectivement un conteneur dit « léger »,
c'est-à-dire une infrastructure similaire à un
serveur d'application J2EE. Il prend donc en
charge la création d'objets et la mise en relation
d'objets par l'intermédiaire d'un fichier de
configuration qui décrit les objets à fabriquer et
les relations de dépendances entre ces objets.
5
Le but et les fonctionnalités
• Le but :
le but de Spring est de faciliter et de rendre productif
le développement d'applications, particulièrement les
applications d'entreprises.
• Les fonctionnalités :
Spring propose de nombreuses fonctionnalités de
base pour le développement d'applications :
6
Le but et les fonctionnalités
• un conteneur léger implémentant le design pattern
IoC pour la gestion des objets et de leurs
dépendances
• Le pattern IoC : L'idée du pattern IoC «
Inversion Of Control » est très simple, elle
consiste, lorsqu'un objet A a besoin d'un objet B, à
déléguer à un objet C la mise en relation de A avec
B. Bon, ok, cela ressemble à une vieille équation
d'algèbre incompréhensible alors un petit exemple
de code vaut mieux qu'une formule fumeuse.
7
Le but et les fonctionnalités
8
Le but et les fonctionnalités
• une gestion des transactions par déclaration offrant
une abstraction du gestionnaire de transactions sousjacent
• faciliter le développement des DAO de la couche de
persistance en utilisant JDBC, JPA, JDO
• un support pour un usage interne à Spring
(notamment dans les transactions)
• faciliter la testabilité de l'application
9
Avantages et inconvénients
• Avantages :
• SPRING est effectivement un conteneur dit “ léger ”, c’est-à-dire
une infrastructure similaire à un serveur d’application J2EE.
• Le gros avantage par rapport aux serveurs d’application est
qu’avec SPRING, vos classes n’ont pas besoin d’implémenter
une quelconque interface pour être prises en charge par le
Framework (au contraire desserveur d’application J2EE et des
EJBs), C’est en ce sens que SPRING est qualifié de conteneur “
léger ”. ».
10
Avantages :
Spring s’appuie principalement sur l’intégration de
trois concepts clés :
1. l’inversion de contrôle est assurée de deux
façons différentes : la recherche de
dépendances et l'injection de dépendances
2.
la programmation orientée aspect
3. une couche d’abstraction.
11
Inconvénients
• La mise en œuvre de Spring n'est pas toujours
aisée car il existe généralement plusieurs
solutions pour mettre en œuvre une
fonctionnalité : par exemple, généralement avec
Spring 3.0, une fonctionnalité est utilisable par
configuration XML, par annotations ou par API.
Bien sûre cela permet de choisir mais cela
impose de faire un choix selon ses besoins.
12
Exemple de Spring sur Eclipse
• Les étapes à suivre :
Vérifiez d’abord que vous avez bien les pré requis :
le JDK doit être installé sur votre machine.
Eclipse doit être installé sur votre machine.
1. Création du projet dans Eclipse
•Lancer Eclipse.
•On créé un nouveau projet.
13
Exemple de Spring sur Eclipse
2. Ajout des librairies
• Il faut télécharger le Framework Spring (exemple a
partir de l'adresse suivante : Spring Framework 2.5.6)
• On va ensuite extraire le contenu de l'archives
zip dans notre projet.
• Créé
un
nouveau
répertoire
lib
qui
contiendra les librairies. On extrait ensuite l'archive
dedans.
14
Exemple de Spring sur Eclipse
3. Il faut ensuite spécifier à Eclipse dans notre
projet qu'on a ajouté une librairie pour
pouvoir l'utiliser:
 On fait un clic droit sur le projet dans le package
explorer qui ouvre un menu contextuel : on
ouvre Build Path → Configure Build Path.
15
Exemple de Spring sur Eclipse
On clique sur l'onglet Libraries, puis sur le
bouton add JARS… Il suffit ensuite d'ajouter les
bibliothèques situées dans les sous répertoires de lib
On valide les modifications sur le projet en cliquant
sur OK. Nous sommes maintenant prêts à débuter le
code!
16
Exemple de Spring sur Eclipse
• Classes et Beans
• Le nom des classes est auto-descriptif. La seule classe
qui est isolée est SpringGardenApplication et ne
sert qu'à démarrer le contexte de Spring. Il faut
remarquer que les classes n'ont des références que
vers des interfaces ce qui permet de découpler les
implémentations.
• Le diagramme ci-dessous montre les classes de
l'application :
17
Exemple de Spring sur Eclipse
18
Exemple de Spring sur Eclipse
• Les beans Springs sont configurés dans le
fichier applicationContext.xml et à travers
d'annotations Java. Un bean doit être vu comme un
objet managé par Spring. Un bean ne correspond pas
forcément à une seule instance car, par exemple, un
bean peut être de type prototype et à chaque fois qu'il
est injecté dans un autre bean, une nouvelle instance
est créée.
19
Exemple de Spring sur Eclipse
• Le diagramme des beans Spring montré ci-dessous a
été généré avec le plugin Spring IDE pour Eclipse. Le
diagramme montre les relations de composition et
d'héritage entre beans. Si on compare le diagramme
avec le fichier XML on peut observer que la
cardinalité n'est pas représentée, par exemple le
bean choux est seulement représenté une seule fois
alors que le potager en contient deux. Il faut aussi
remarquer que les beans déclarés avec des
annotations sont bien représentés.
20
Exemple de Spring sur Eclipse
21
Exemple de Spring sur Eclipse
4. Classe d'entrée de l'application
• La classe SpringGardenApplication est le
point d'entrée de cette application stand-alone.
Sa méthode main charge le contexte de Spring.
22
Exemple de Spring sur Eclipse
23
Exemple de Spring sur Eclipse
• Spring cherchera pour sa configuration le
fichier applicationContext.xml qui se trouve
dans le même package que la classe. Il est aussi
possible d'utiliser une autre classe de Spring
pour spécifier un fichier de configuration en
dehors du classpath, par exemple vers un
chemin absolu du système de fichiers.
24
Exemple de Spring sur Eclipse
5. Fichier de configuration de Spring
25
Exemple de Spring sur Eclipse
 Le bean Jardinier est un des plus simples car
sa classe a juste une propriété nom.
 La classe Java correspondante est la suivante :
26
Exemple de Spring sur Eclipse
27
Exemple de Spring sur Eclipse
5. Fichier de configuration Maven
Le fichier de configuration de Maven 2,
nommé pom.xml se trouve à la racine du
projet. Il déclare les propriétés du projet ainsi
que ses dépendances.
28
Exemple de Spring sur Eclipse
29
Exemple de Spring sur Eclipse
6. Exécution du projet
La compilation et l'exécution de l'application
peuvent se faire avec une seule commande
Maven :
mvn compile exec:java Dexec.mainClass="org.yannart.springgarden
.SpringGardenApplication"
30
Exemple de Spring sur Eclipse
• L'application s'exécute et vous aurez quelque
chose semblable à ça :
31
Exemple de Spring sur Eclipse
32
Conclusion
• Spring est très ouvert et ne limite pas les
comportements.
• pour un même problème il existe parfois une
multitude de solutions différentes .
• Spring a largement pénètre le monde industriel
et jouit d'une communauté importante et
dynamique
.sa prise en main est très facile et très intuitive
basée sur le principe "convention over
configuration"
33
Merci pour votre attention