33
Projet sur Framework Spring Présenté par : Ouadhour mohamed el hedi Ben Smida Sami Aouidet Karim 1

Projet sur Framework Spring

  • Upload
    garry

  • View
    63

  • Download
    0

Embed Size (px)

DESCRIPTION

Projet sur Framework Spring. Présenté par : Ouadhour mohamed el hedi Ben Smida Sami Aouidet Karim. Plan :. Définition d’un Framework Présentation de Spring Le but et les fonctionnalités Avantages et inconvénients Exemple de Spring Conclusion . - PowerPoint PPT Presentation

Citation preview

Page 1: Projet sur Framework                      Spring

1

Projet sur Framework SpringPrésenté par : Ouadhour mohamed el hedi Ben Smida Sami Aouidet Karim

Page 2: Projet sur Framework                      Spring

2

Plan :I. Définition d’un Framework II. Présentation de Spring III. Le but et les fonctionnalitésIV. Avantages et inconvénients V. Exemple de SpringVI. Conclusion

Page 3: Projet sur Framework                      Spring

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

Page 4: Projet sur Framework                      Spring

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.

Page 5: Projet sur Framework                      Spring

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 :

Page 6: Projet sur Framework                      Spring

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.

Page 7: Projet sur Framework                      Spring

7

Le but et les fonctionnalités

Page 8: Projet sur Framework                      Spring

8

Le but et les fonctionnalités• une gestion des transactions par déclaration offrant

une abstraction du gestionnaire de transactions sous-jacent

• 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

Page 9: Projet sur Framework                      Spring

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 ”. ».

Page 10: Projet sur Framework                      Spring

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 aspect3. une couche d’abstraction.

Page 11: Projet sur Framework                      Spring

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.

Page 12: Projet sur Framework                      Spring

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.

Page 13: Projet sur Framework                      Spring

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.

Page 14: Projet sur Framework                      Spring

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.

Page 15: Projet sur Framework                      Spring

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!  

Page 16: Projet sur Framework                      Spring

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 :

Page 17: Projet sur Framework                      Spring

17

Exemple de Spring sur Eclipse

Page 18: Projet sur Framework                      Spring

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.

Page 19: Projet sur Framework                      Spring

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.

Page 20: Projet sur Framework                      Spring

20

Exemple de Spring sur Eclipse

Page 21: Projet sur Framework                      Spring

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.

Page 22: Projet sur Framework                      Spring

22

Exemple de Spring sur Eclipse

Page 23: Projet sur Framework                      Spring

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.

Page 24: Projet sur Framework                      Spring

24

Exemple de Spring sur Eclipse 5.  Fichier de configuration de Spring

Page 25: Projet sur Framework                      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 :

Page 26: Projet sur Framework                      Spring

26

Exemple de Spring sur Eclipse

Page 27: Projet sur Framework                      Spring

27

Exemple de Spring sur Eclipse 5. Fichier de configuration MavenLe 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.

Page 28: Projet sur Framework                      Spring

28

Exemple de Spring sur Eclipse

Page 29: Projet sur Framework                      Spring

29

Exemple de Spring sur Eclipse 6. Exécution du projetLa 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"

Page 30: Projet sur Framework                      Spring

30

Exemple de Spring sur Eclipse •L'application s'exécute et vous aurez

quelque chose semblable à ça :

Page 31: Projet sur Framework                      Spring

31

Exemple de Spring sur Eclipse

Page 32: Projet sur Framework                      Spring

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"

Page 33: Projet sur Framework                      Spring

33

Merci pour votre attention