SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
1
Création d’un projet SPRING MVC
1. Installation du plugin Spring Tools
On va installer un plugin SPRING Tools pour notre Eclipse Luna. Il va faciliter la tâche de
travail et de développement de notre projet.
Accédez au menu d’Eclipse, dans Help > Eclipse
Maketplace > on tape SPRING TOOLS et on choisi le
plugin adéquat pour le télécharger.
Une fois on clique sur le bouton Install, le
téléchargement commence automatiquement. Reste juste à accepter l’installation et tapez
sur Finish.
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
2
2. Création d’un projet Spring MVC
Après avoir installer le nouveau plugin Spring tools, on peut créer un projet de type spring
MVC. Accédez de la manière suivante : New > Other > Spring > Spring Projet > Spring MVC
Projet et on donne un nom au projet E-BOUTIQUE.
Structure du projet après la création :
 Le fichier web.xml
 /WEB-INF/spring/root-context.xml
o Ce fichier est lu par ContextLoaderListener,
au démarrage du serveur .
o C’est un fichier dans lequel contexte de
l’application sera construit
o ContextLoaderListener représente Spring
IOC, c’est donc un fichier pour l’injection
des dépendances
 /WEB-INF/spring/appServlet/servlet-context.xml :
Ce fichier est lu par DispatcherServlet qui
représente le controleur web de l’application
 La classe HomeController
 La vue Home.jsp
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
3
 Maven dependencies : pom.xml
On peut maintenant tester le lancement du projet et voir l’affichage de la page d’accueil.
3. Spécifications du projet
On souhaite créer une application qui permet de gérer des comptes bancaire:
 Chaque compte est défini un numéro, un solde et une date de création
 Un compte courant est un compte qui possède en plus un découvert
 Un compte épargne est un compte qui possède en plus un taux d’intérêt.
 Chaque compte appartient à un client créé par un employé
 Chaque client est défini par son code et son nom
 Un employé est défini par son code et son nom
 Chaque employé possède un supérieur hiérarchique
 Chaque employé peut appartenir à plusieurs groupes
 Chaque groupe, défini par un code et un nom, peut contenir plusieurs employés.
 Chaque compte peut subir plusieurs opérations.
 Il existe deux types d’opérations : Versement et Retrait
 Chaque opération est effectuée par un employé
 Une opération est définie par un numéro, une date et un montant
L’application doit permettre les opérations suivantes:
 Ajouter un client
 Ajouter un employé
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
4
 Ajouter un groupe
 Ajouter un employé à un groupe
 Ajouter un compte
 Ajouter une opération
 Consulter un compte
 Consulter les comptes d’un client
 Consulté les comptes créés par un employé
 Consulter tous les employés
 Consulter tout les groupes
 Consulter les employés d’un groupe
 Consulter les clientes dont le nom contient un mot clé
 Effectuer un versement d’un montant dans un compte
 Effectuer un retrait d’un montant d’un compte
 Effectuer un virement d’un montant d’un compte vers un autre
4. Maven dependencies : Spring
Dans le fichier pom.xml le fichier de MAVEN il faut ajouter lés dépendances de Spring,
Hibernate pour que les librairies se téléchargent automatiquement sous la classpath du
projet.
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
5
Les dépendances de SPRING :
Les dépendances de Hibernate/JPA
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
6
5. Implémentation des entités
Création des entités du projet : Client, Compte, CompteEpargne, CompteCourant, Employe,
Groupe, Operation, Retrait et Versement.
On va ajouter les annotations à chaque entité en utilisant le JPA de Hibernate pour gérer le
Mapping Objet/Relationnel.
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
7
6. Implémentation de la couche DAO
Définition de toutes les méthodes dans l’interface IBanqueDAO :
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
8
Implémenter toutes les méthodes définies dans l’interface dans la classe BanqueDAOImp.
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
9
7- Implémentation de la couche métier
Définition de toutes les méthodes dans l’interface IBanqueMetier :
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
10
Implémenter toutes les méthodes définies dans l’interface dans la classe BanqueMetierImp.
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
11
8- Configuration du fichier hibernate
Il faut configurer maintenant le fichier de hibernate qui gère la persistance. On va créer un
fichier nommé persistante.xml sous le répertoire resources/META-INF/persistence.xml
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
12
9- Configuration du fichier HIBERNATE
Il faut configurer maintenant le fichier de SPRING IOC qui fait l’injection des dépendances de
la couche DAO et de la couche métier. On va créer un fichier nommé root-context.xml par
défaut ou on le nomme applicationContext.xml sous le répertoire resources/root-
context.xml
Le fichier déjà contient la déclaration des données qui servent à se connecter à la base de
données : Driver, URL, le nom de la base de données qu’on va la créer sous le nom
gestion_banque, le login et le mot de passe.
On va essayer de tester maintenant la couche métier qu’on vient d’implémenter et pour se
faire on va juste créer une classe principale de test. Lors de l’exécution de cette classe et à
l’aide de la configuration de cette ligne
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
13
La base sera créée automatiquement avec toutes les tables vu qu’on travaille avec les
annotations de JPA.
10- La classe de test
Une fois le test lancé, la base sera créée.
La structure de la base de données a été implémentée correctement avec l’ensemble des
tables et les champs nécessaires même rempli avec quelques enregistrements et prête à
l’exploitation.
On va tester quelques méthodes de consultation de la couche métier.
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
14
11- L’implémentation de la couche web
a. Le fichier web.xml
b. Le fichier servlet-context.xml
Ce fichier définit le résolveur de vu.
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
15
c. La classe Controller
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
16
d. La classe Form
La classe Form représente le model M de MVC. Il joue le rôle d’une classe contenant des
attributs utilisés dans le formulaire de la JSP
e. Un peu de CSS
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
17
f. La vue (les pages JSP)
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
18
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
19
On peut encore améliorer ce petit projet en implémentant la pagination, en ajoutant
l’authentification Spring Security et en ajoutant d’autre page JSP de gestion.
DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION)
31 janvier
2015
20
L’affichage de la page JSP sera comme suit :
A très bientôt & à la prochaine formation.

Weitere ähnliche Inhalte

Was ist angesagt?

Applications Android - cours 13 : Connectivité et services Web
Applications Android - cours 13 : Connectivité et services WebApplications Android - cours 13 : Connectivité et services Web
Applications Android - cours 13 : Connectivité et services WebAhmed-Chawki Chaouche
 
An introduction to Vue.js
An introduction to Vue.jsAn introduction to Vue.js
An introduction to Vue.jsPagepro
 
cours j2ee -présentation
cours  j2ee -présentationcours  j2ee -présentation
cours j2ee -présentationYassine Badri
 
Formation JAVA/J2EE
Formation JAVA/J2EEFormation JAVA/J2EE
Formation JAVA/J2EEInes Ouaz
 
JDBC: Gestion des bases de données en Java
JDBC: Gestion des bases de données en Java JDBC: Gestion des bases de données en Java
JDBC: Gestion des bases de données en Java Youness Boukouchi
 
eServices-Tp1: Web Services
eServices-Tp1: Web ServiceseServices-Tp1: Web Services
eServices-Tp1: Web ServicesLilia Sfaxi
 
Intégration continue et déploiement continue avec Jenkins
Intégration continue et déploiement continue avec JenkinsIntégration continue et déploiement continue avec Jenkins
Intégration continue et déploiement continue avec JenkinsKokou Gaglo
 
Marzouk architecture encouches-jee-mvc
Marzouk architecture encouches-jee-mvcMarzouk architecture encouches-jee-mvc
Marzouk architecture encouches-jee-mvcabderrahim marzouk
 
Workshop spring session 2 - La persistance au sein des applications Java
Workshop spring   session 2 - La persistance au sein des applications JavaWorkshop spring   session 2 - La persistance au sein des applications Java
Workshop spring session 2 - La persistance au sein des applications JavaAntoine Rey
 
Introduction to Java 11
Introduction to Java 11 Introduction to Java 11
Introduction to Java 11 Knoldus Inc.
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express jsAbdoulaye Dieng
 
Technologies sur angular.pptx
Technologies sur angular.pptxTechnologies sur angular.pptx
Technologies sur angular.pptxIdrissaDembl
 
Présentation du DevOps
Présentation du DevOpsPrésentation du DevOps
Présentation du DevOpsCyrielle Orban
 

Was ist angesagt? (20)

Applications Android - cours 13 : Connectivité et services Web
Applications Android - cours 13 : Connectivité et services WebApplications Android - cours 13 : Connectivité et services Web
Applications Android - cours 13 : Connectivité et services Web
 
An introduction to Vue.js
An introduction to Vue.jsAn introduction to Vue.js
An introduction to Vue.js
 
cours j2ee -présentation
cours  j2ee -présentationcours  j2ee -présentation
cours j2ee -présentation
 
Spring security
Spring securitySpring security
Spring security
 
Formation JAVA/J2EE
Formation JAVA/J2EEFormation JAVA/J2EE
Formation JAVA/J2EE
 
JDBC: Gestion des bases de données en Java
JDBC: Gestion des bases de données en Java JDBC: Gestion des bases de données en Java
JDBC: Gestion des bases de données en Java
 
eServices-Tp1: Web Services
eServices-Tp1: Web ServiceseServices-Tp1: Web Services
eServices-Tp1: Web Services
 
Intégration continue et déploiement continue avec Jenkins
Intégration continue et déploiement continue avec JenkinsIntégration continue et déploiement continue avec Jenkins
Intégration continue et déploiement continue avec Jenkins
 
Marzouk architecture encouches-jee-mvc
Marzouk architecture encouches-jee-mvcMarzouk architecture encouches-jee-mvc
Marzouk architecture encouches-jee-mvc
 
Servlets et JSP
Servlets et JSPServlets et JSP
Servlets et JSP
 
Présentation Docker
Présentation DockerPrésentation Docker
Présentation Docker
 
Workshop spring session 2 - La persistance au sein des applications Java
Workshop spring   session 2 - La persistance au sein des applications JavaWorkshop spring   session 2 - La persistance au sein des applications Java
Workshop spring session 2 - La persistance au sein des applications Java
 
Introduction to Java 11
Introduction to Java 11 Introduction to Java 11
Introduction to Java 11
 
Modele mvc
Modele mvcModele mvc
Modele mvc
 
Support de Cours JSF2 Première partie Intégration avec Spring
Support de Cours JSF2 Première partie Intégration avec SpringSupport de Cours JSF2 Première partie Intégration avec Spring
Support de Cours JSF2 Première partie Intégration avec Spring
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express js
 
Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)Support programmation orientée aspect mohamed youssfi (aop)
Support programmation orientée aspect mohamed youssfi (aop)
 
Technologies sur angular.pptx
Technologies sur angular.pptxTechnologies sur angular.pptx
Technologies sur angular.pptx
 
Site JEE de ECommerce Basé sur Spring IOC MVC Security JPA Hibernate
Site JEE de ECommerce  Basé sur Spring IOC MVC Security JPA HibernateSite JEE de ECommerce  Basé sur Spring IOC MVC Security JPA Hibernate
Site JEE de ECommerce Basé sur Spring IOC MVC Security JPA Hibernate
 
Présentation du DevOps
Présentation du DevOpsPrésentation du DevOps
Présentation du DevOps
 

Andere mochten auch

Examen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesExamen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesInes Ouaz
 
Examen principal- php - correction
Examen principal- php - correctionExamen principal- php - correction
Examen principal- php - correctionInes Ouaz
 
Examen principal - PHP
Examen principal - PHPExamen principal - PHP
Examen principal - PHPInes Ouaz
 
Examen principal + Correction ASD
Examen principal + Correction ASDExamen principal + Correction ASD
Examen principal + Correction ASDInes Ouaz
 
Prototype rapport
Prototype rapportPrototype rapport
Prototype rapportInes Ouaz
 
Examen principal - Fondement Multimedia - correction
Examen principal - Fondement Multimedia - correctionExamen principal - Fondement Multimedia - correction
Examen principal - Fondement Multimedia - correctionInes Ouaz
 
Travaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de donnéesTravaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de donnéesInes Ouaz
 
Examen Principal - Fondement Multimedia Janvier 2015
Examen Principal - Fondement Multimedia Janvier 2015Examen Principal - Fondement Multimedia Janvier 2015
Examen Principal - Fondement Multimedia Janvier 2015Ines Ouaz
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Ines Ouaz
 
Cv ines ouaz
Cv ines ouazCv ines ouaz
Cv ines ouazInes Ouaz
 

Andere mochten auch (11)

Examen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de donnéesExamen principal - Algorithme & Structures de données
Examen principal - Algorithme & Structures de données
 
Examen principal- php - correction
Examen principal- php - correctionExamen principal- php - correction
Examen principal- php - correction
 
Examen principal - PHP
Examen principal - PHPExamen principal - PHP
Examen principal - PHP
 
Examen principal + Correction ASD
Examen principal + Correction ASDExamen principal + Correction ASD
Examen principal + Correction ASD
 
Cours fondement du multimedia
Cours fondement du multimediaCours fondement du multimedia
Cours fondement du multimedia
 
Prototype rapport
Prototype rapportPrototype rapport
Prototype rapport
 
Examen principal - Fondement Multimedia - correction
Examen principal - Fondement Multimedia - correctionExamen principal - Fondement Multimedia - correction
Examen principal - Fondement Multimedia - correction
 
Travaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de donnéesTravaux dirigés 1: algorithme & structures de données
Travaux dirigés 1: algorithme & structures de données
 
Examen Principal - Fondement Multimedia Janvier 2015
Examen Principal - Fondement Multimedia Janvier 2015Examen Principal - Fondement Multimedia Janvier 2015
Examen Principal - Fondement Multimedia Janvier 2015
 
Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)Travaux dirigés 1: algorithme & structures de données (corrigés)
Travaux dirigés 1: algorithme & structures de données (corrigés)
 
Cv ines ouaz
Cv ines ouazCv ines ouaz
Cv ines ouaz
 

Ähnlich wie Application Spring MVC/IOC & Hibernate

Spring boot anane maryem ben aziza syrine
Spring boot anane maryem ben aziza syrineSpring boot anane maryem ben aziza syrine
Spring boot anane maryem ben aziza syrineSyrine Ben aziza
 
cours-gratuit.com--id-12477.pdf
cours-gratuit.com--id-12477.pdfcours-gratuit.com--id-12477.pdf
cours-gratuit.com--id-12477.pdfssuser192642
 
CodeBuilder_DevOpsCenter.pptx
CodeBuilder_DevOpsCenter.pptxCodeBuilder_DevOpsCenter.pptx
CodeBuilder_DevOpsCenter.pptxThomasParaiso1
 
Supervision et analyse de script batch
Supervision et analyse de script batchSupervision et analyse de script batch
Supervision et analyse de script batchschomy
 
Connexion jdbc
Connexion jdbcConnexion jdbc
Connexion jdbcInes Ouaz
 
Et si mon test était la spécification de mon application ? - JACOB - iWE - So...
Et si mon test était la spécification de mon application ? - JACOB - iWE - So...Et si mon test était la spécification de mon application ? - JACOB - iWE - So...
Et si mon test était la spécification de mon application ? - JACOB - iWE - So...TelecomValley
 
Développement de plug in sous eclipse
Développement de plug in sous eclipseDéveloppement de plug in sous eclipse
Développement de plug in sous eclipseISIG
 
20100225 Ippon Osgi Are You Ready
20100225 Ippon Osgi Are You Ready20100225 Ippon Osgi Are You Ready
20100225 Ippon Osgi Are You ReadyGeoffray Gruel
 
[Webinar] Techniques avancées de création de workflow - FR
[Webinar] Techniques avancées de création de workflow - FR[Webinar] Techniques avancées de création de workflow - FR
[Webinar] Techniques avancées de création de workflow - FRNuxeo
 
Développement d’extensions WordPress
Développement d’extensions WordPressDéveloppement d’extensions WordPress
Développement d’extensions WordPressChi Nacim
 
Decouvrez Les Dernieres Innovations Tableau 2020
Decouvrez Les Dernieres Innovations Tableau 2020Decouvrez Les Dernieres Innovations Tableau 2020
Decouvrez Les Dernieres Innovations Tableau 2020Wiiisdom
 
PFA.Houda.Bouhaouli.(version 19.09.22).docx
PFA.Houda.Bouhaouli.(version 19.09.22).docxPFA.Houda.Bouhaouli.(version 19.09.22).docx
PFA.Houda.Bouhaouli.(version 19.09.22).docxHoudaBouhaouli
 
Les méthodes agiles dans TFS
Les méthodes agiles dans TFSLes méthodes agiles dans TFS
Les méthodes agiles dans TFSDenis Voituron
 
Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !Cédric Leblond
 
atam guide de developpement v1.3
atam guide de developpement v1.3atam guide de developpement v1.3
atam guide de developpement v1.3Abdessamad Hamouch
 
Asp.net Tutorials de L'application "Organizer"
Asp.net Tutorials de L'application "Organizer"Asp.net Tutorials de L'application "Organizer"
Asp.net Tutorials de L'application "Organizer"Nazih Heni
 
Rex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - EnsimRex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - EnsimLaurent Broudoux
 

Ähnlich wie Application Spring MVC/IOC & Hibernate (20)

Spring boot anane maryem ben aziza syrine
Spring boot anane maryem ben aziza syrineSpring boot anane maryem ben aziza syrine
Spring boot anane maryem ben aziza syrine
 
spring-boot-fr.pdf
spring-boot-fr.pdfspring-boot-fr.pdf
spring-boot-fr.pdf
 
cours-gratuit.com--id-12477.pdf
cours-gratuit.com--id-12477.pdfcours-gratuit.com--id-12477.pdf
cours-gratuit.com--id-12477.pdf
 
CodeBuilder_DevOpsCenter.pptx
CodeBuilder_DevOpsCenter.pptxCodeBuilder_DevOpsCenter.pptx
CodeBuilder_DevOpsCenter.pptx
 
Supervision et analyse de script batch
Supervision et analyse de script batchSupervision et analyse de script batch
Supervision et analyse de script batch
 
Connexion jdbc
Connexion jdbcConnexion jdbc
Connexion jdbc
 
Et si mon test était la spécification de mon application ? - JACOB - iWE - So...
Et si mon test était la spécification de mon application ? - JACOB - iWE - So...Et si mon test était la spécification de mon application ? - JACOB - iWE - So...
Et si mon test était la spécification de mon application ? - JACOB - iWE - So...
 
Développement de plug in sous eclipse
Développement de plug in sous eclipseDéveloppement de plug in sous eclipse
Développement de plug in sous eclipse
 
20100225 Ippon Osgi Are You Ready
20100225 Ippon Osgi Are You Ready20100225 Ippon Osgi Are You Ready
20100225 Ippon Osgi Are You Ready
 
[Webinar] Techniques avancées de création de workflow - FR
[Webinar] Techniques avancées de création de workflow - FR[Webinar] Techniques avancées de création de workflow - FR
[Webinar] Techniques avancées de création de workflow - FR
 
Développement d’extensions WordPress
Développement d’extensions WordPressDéveloppement d’extensions WordPress
Développement d’extensions WordPress
 
cours-gratuit.com--id-4422.pdf
cours-gratuit.com--id-4422.pdfcours-gratuit.com--id-4422.pdf
cours-gratuit.com--id-4422.pdf
 
Decouvrez Les Dernieres Innovations Tableau 2020
Decouvrez Les Dernieres Innovations Tableau 2020Decouvrez Les Dernieres Innovations Tableau 2020
Decouvrez Les Dernieres Innovations Tableau 2020
 
PFA.Houda.Bouhaouli.(version 19.09.22).docx
PFA.Houda.Bouhaouli.(version 19.09.22).docxPFA.Houda.Bouhaouli.(version 19.09.22).docx
PFA.Houda.Bouhaouli.(version 19.09.22).docx
 
Les méthodes agiles dans TFS
Les méthodes agiles dans TFSLes méthodes agiles dans TFS
Les méthodes agiles dans TFS
 
Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !Ma stack d'outils agiles, tout un programme !
Ma stack d'outils agiles, tout un programme !
 
atam guide de developpement v1.3
atam guide de developpement v1.3atam guide de developpement v1.3
atam guide de developpement v1.3
 
Asp.net Tutorials de L'application "Organizer"
Asp.net Tutorials de L'application "Organizer"Asp.net Tutorials de L'application "Organizer"
Asp.net Tutorials de L'application "Organizer"
 
spring-api-rest.pdf
spring-api-rest.pdfspring-api-rest.pdf
spring-api-rest.pdf
 
Rex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - EnsimRex Software Factories 20140117 - Ensim
Rex Software Factories 20140117 - Ensim
 

Mehr von Ines Ouaz

Fondamentaux java
Fondamentaux javaFondamentaux java
Fondamentaux javaInes Ouaz
 
Java & Etat de l'art
Java & Etat de l'artJava & Etat de l'art
Java & Etat de l'artInes Ouaz
 
Cv Ouaz Ines
Cv Ouaz InesCv Ouaz Ines
Cv Ouaz InesInes Ouaz
 
Environnement java
Environnement javaEnvironnement java
Environnement javaInes Ouaz
 
Framework Hibernate
Framework HibernateFramework Hibernate
Framework HibernateInes Ouaz
 
Algorithme & structures de données Chap III
Algorithme & structures de données Chap IIIAlgorithme & structures de données Chap III
Algorithme & structures de données Chap IIIInes Ouaz
 
Algorithme & structures de données Chap II
Algorithme & structures de données Chap IIAlgorithme & structures de données Chap II
Algorithme & structures de données Chap IIInes Ouaz
 
Algorithme & structures de données Chap I
Algorithme & structures de données Chap IAlgorithme & structures de données Chap I
Algorithme & structures de données Chap IInes Ouaz
 

Mehr von Ines Ouaz (8)

Fondamentaux java
Fondamentaux javaFondamentaux java
Fondamentaux java
 
Java & Etat de l'art
Java & Etat de l'artJava & Etat de l'art
Java & Etat de l'art
 
Cv Ouaz Ines
Cv Ouaz InesCv Ouaz Ines
Cv Ouaz Ines
 
Environnement java
Environnement javaEnvironnement java
Environnement java
 
Framework Hibernate
Framework HibernateFramework Hibernate
Framework Hibernate
 
Algorithme & structures de données Chap III
Algorithme & structures de données Chap IIIAlgorithme & structures de données Chap III
Algorithme & structures de données Chap III
 
Algorithme & structures de données Chap II
Algorithme & structures de données Chap IIAlgorithme & structures de données Chap II
Algorithme & structures de données Chap II
 
Algorithme & structures de données Chap I
Algorithme & structures de données Chap IAlgorithme & structures de données Chap I
Algorithme & structures de données Chap I
 

Kürzlich hochgeladen

CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...Universidad Complutense de Madrid
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfachrafbrahimi1
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfAmgdoulHatim
 
Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesMohammedAmineHatoch
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Technologia Formation
 
658708519-Power-Point-Management-Interculturel.pdf
658708519-Power-Point-Management-Interculturel.pdf658708519-Power-Point-Management-Interculturel.pdf
658708519-Power-Point-Management-Interculturel.pdfMariaClaraAlves46
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxikospam0
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxhamzagame
 
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdfSTRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdfGamal Mansour
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxrajaakiass01
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetJeanYvesMoine
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxShinyaHilalYamanaka
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkRefRama
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film françaisTxaruka
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxabdououanighd
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...Nguyen Thanh Tu Collection
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaireTxaruka
 
Cours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfCours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfssuserc72852
 
La mondialisation avantages et inconvénients
La mondialisation avantages et inconvénientsLa mondialisation avantages et inconvénients
La mondialisation avantages et inconvénientsJaouadMhirach
 

Kürzlich hochgeladen (20)

CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdf
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
 
Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiques
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
 
658708519-Power-Point-Management-Interculturel.pdf
658708519-Power-Point-Management-Interculturel.pdf658708519-Power-Point-Management-Interculturel.pdf
658708519-Power-Point-Management-Interculturel.pdf
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptx
 
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdfSTRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptx
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptx
 
Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhk
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film français
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 
Cours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdfCours Préparation à l’ISO 27001 version 2022.pdf
Cours Préparation à l’ISO 27001 version 2022.pdf
 
La mondialisation avantages et inconvénients
La mondialisation avantages et inconvénientsLa mondialisation avantages et inconvénients
La mondialisation avantages et inconvénients
 

Application Spring MVC/IOC & Hibernate

  • 1. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 1 Création d’un projet SPRING MVC 1. Installation du plugin Spring Tools On va installer un plugin SPRING Tools pour notre Eclipse Luna. Il va faciliter la tâche de travail et de développement de notre projet. Accédez au menu d’Eclipse, dans Help > Eclipse Maketplace > on tape SPRING TOOLS et on choisi le plugin adéquat pour le télécharger. Une fois on clique sur le bouton Install, le téléchargement commence automatiquement. Reste juste à accepter l’installation et tapez sur Finish.
  • 2. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 2 2. Création d’un projet Spring MVC Après avoir installer le nouveau plugin Spring tools, on peut créer un projet de type spring MVC. Accédez de la manière suivante : New > Other > Spring > Spring Projet > Spring MVC Projet et on donne un nom au projet E-BOUTIQUE. Structure du projet après la création :  Le fichier web.xml  /WEB-INF/spring/root-context.xml o Ce fichier est lu par ContextLoaderListener, au démarrage du serveur . o C’est un fichier dans lequel contexte de l’application sera construit o ContextLoaderListener représente Spring IOC, c’est donc un fichier pour l’injection des dépendances  /WEB-INF/spring/appServlet/servlet-context.xml : Ce fichier est lu par DispatcherServlet qui représente le controleur web de l’application  La classe HomeController  La vue Home.jsp
  • 3. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 3  Maven dependencies : pom.xml On peut maintenant tester le lancement du projet et voir l’affichage de la page d’accueil. 3. Spécifications du projet On souhaite créer une application qui permet de gérer des comptes bancaire:  Chaque compte est défini un numéro, un solde et une date de création  Un compte courant est un compte qui possède en plus un découvert  Un compte épargne est un compte qui possède en plus un taux d’intérêt.  Chaque compte appartient à un client créé par un employé  Chaque client est défini par son code et son nom  Un employé est défini par son code et son nom  Chaque employé possède un supérieur hiérarchique  Chaque employé peut appartenir à plusieurs groupes  Chaque groupe, défini par un code et un nom, peut contenir plusieurs employés.  Chaque compte peut subir plusieurs opérations.  Il existe deux types d’opérations : Versement et Retrait  Chaque opération est effectuée par un employé  Une opération est définie par un numéro, une date et un montant L’application doit permettre les opérations suivantes:  Ajouter un client  Ajouter un employé
  • 4. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 4  Ajouter un groupe  Ajouter un employé à un groupe  Ajouter un compte  Ajouter une opération  Consulter un compte  Consulter les comptes d’un client  Consulté les comptes créés par un employé  Consulter tous les employés  Consulter tout les groupes  Consulter les employés d’un groupe  Consulter les clientes dont le nom contient un mot clé  Effectuer un versement d’un montant dans un compte  Effectuer un retrait d’un montant d’un compte  Effectuer un virement d’un montant d’un compte vers un autre 4. Maven dependencies : Spring Dans le fichier pom.xml le fichier de MAVEN il faut ajouter lés dépendances de Spring, Hibernate pour que les librairies se téléchargent automatiquement sous la classpath du projet.
  • 5. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 5 Les dépendances de SPRING : Les dépendances de Hibernate/JPA
  • 6. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 6 5. Implémentation des entités Création des entités du projet : Client, Compte, CompteEpargne, CompteCourant, Employe, Groupe, Operation, Retrait et Versement. On va ajouter les annotations à chaque entité en utilisant le JPA de Hibernate pour gérer le Mapping Objet/Relationnel.
  • 7. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 7 6. Implémentation de la couche DAO Définition de toutes les méthodes dans l’interface IBanqueDAO :
  • 8. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 8 Implémenter toutes les méthodes définies dans l’interface dans la classe BanqueDAOImp.
  • 9. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 9 7- Implémentation de la couche métier Définition de toutes les méthodes dans l’interface IBanqueMetier :
  • 10. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 10 Implémenter toutes les méthodes définies dans l’interface dans la classe BanqueMetierImp.
  • 11. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 11 8- Configuration du fichier hibernate Il faut configurer maintenant le fichier de hibernate qui gère la persistance. On va créer un fichier nommé persistante.xml sous le répertoire resources/META-INF/persistence.xml
  • 12. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 12 9- Configuration du fichier HIBERNATE Il faut configurer maintenant le fichier de SPRING IOC qui fait l’injection des dépendances de la couche DAO et de la couche métier. On va créer un fichier nommé root-context.xml par défaut ou on le nomme applicationContext.xml sous le répertoire resources/root- context.xml Le fichier déjà contient la déclaration des données qui servent à se connecter à la base de données : Driver, URL, le nom de la base de données qu’on va la créer sous le nom gestion_banque, le login et le mot de passe. On va essayer de tester maintenant la couche métier qu’on vient d’implémenter et pour se faire on va juste créer une classe principale de test. Lors de l’exécution de cette classe et à l’aide de la configuration de cette ligne
  • 13. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 13 La base sera créée automatiquement avec toutes les tables vu qu’on travaille avec les annotations de JPA. 10- La classe de test Une fois le test lancé, la base sera créée. La structure de la base de données a été implémentée correctement avec l’ensemble des tables et les champs nécessaires même rempli avec quelques enregistrements et prête à l’exploitation. On va tester quelques méthodes de consultation de la couche métier.
  • 14. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 14 11- L’implémentation de la couche web a. Le fichier web.xml b. Le fichier servlet-context.xml Ce fichier définit le résolveur de vu.
  • 15. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 15 c. La classe Controller
  • 16. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 16 d. La classe Form La classe Form représente le model M de MVC. Il joue le rôle d’une classe contenant des attributs utilisés dans le formulaire de la JSP e. Un peu de CSS
  • 17. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 17 f. La vue (les pages JSP)
  • 19. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 19 On peut encore améliorer ce petit projet en implémentant la pagination, en ajoutant l’authentification Spring Security et en ajoutant d’autre page JSP de gestion.
  • 20. DEF (DEVELOPPEMENT/ ENCADREMENT/FORMATION) 31 janvier 2015 20 L’affichage de la page JSP sera comme suit : A très bientôt & à la prochaine formation.