SlideShare une entreprise Scribd logo

Application Spring MVC/IOC & Hibernate

Ines Ouaz
Ines Ouaz
Ines OuazEnseignante informatique à Ihe Sousse (IHES)

Implémentation d'une application de gestion d'une banque en Spring MVC/Hibernate/JPA/Maven Modèle en couche Modèle MVC

Application Spring MVC/IOC & Hibernate

1  sur  20
Télécharger pour lire hors ligne
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.

Contenu connexe

Tendances

Formation jpa-hibernate-spring-data
Formation jpa-hibernate-spring-dataFormation jpa-hibernate-spring-data
Formation jpa-hibernate-spring-dataLhouceine OUHAMZA
 
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
 
softCours design pattern m youssfi partie 9 creation des objets abstract fact...
softCours design pattern m youssfi partie 9 creation des objets abstract fact...softCours design pattern m youssfi partie 9 creation des objets abstract fact...
softCours design pattern m youssfi partie 9 creation des objets abstract fact...ENSET, Université Hassan II Casablanca
 
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)ENSET, Université Hassan II Casablanca
 
Connexion jdbc
Connexion jdbcConnexion jdbc
Connexion jdbcInes Ouaz
 
Formation JAVA/J2EE
Formation JAVA/J2EEFormation JAVA/J2EE
Formation JAVA/J2EEInes Ouaz
 
Support de cours EJB 3 version complète Par Mr Youssfi, ENSET, Université Ha...
Support de cours EJB 3 version complète Par Mr  Youssfi, ENSET, Université Ha...Support de cours EJB 3 version complète Par Mr  Youssfi, ENSET, Université Ha...
Support de cours EJB 3 version complète Par Mr Youssfi, ENSET, Université Ha...ENSET, Université Hassan II Casablanca
 
Introduction à spring boot
Introduction à spring bootIntroduction à spring boot
Introduction à spring bootAntoine Rey
 

Tendances (20)

Formation jpa-hibernate-spring-data
Formation jpa-hibernate-spring-dataFormation jpa-hibernate-spring-data
Formation jpa-hibernate-spring-data
 
Maven et industrialisation du logiciel
Maven et industrialisation du logicielMaven et industrialisation du logiciel
Maven et industrialisation du logiciel
 
Support developpement applications mobiles avec ionic v3 et v4
Support developpement applications mobiles avec ionic v3 et v4Support developpement applications mobiles avec ionic v3 et v4
Support developpement applications mobiles avec ionic v3 et v4
 
Support POO Java Deuxième Partie
Support POO Java Deuxième PartieSupport POO Java Deuxième Partie
Support POO Java Deuxième Partie
 
Support JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVCSupport JEE Spring Inversion de Controle IOC et Spring MVC
Support JEE Spring Inversion de Controle IOC et Spring MVC
 
Support Java Avancé Troisième Partie
Support Java Avancé Troisième PartieSupport Java Avancé Troisième Partie
Support Java Avancé Troisième Partie
 
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
 
softCours design pattern m youssfi partie 9 creation des objets abstract fact...
softCours design pattern m youssfi partie 9 creation des objets abstract fact...softCours design pattern m youssfi partie 9 creation des objets abstract fact...
softCours design pattern m youssfi partie 9 creation des objets abstract fact...
 
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
Développement d'un site web jee de e commerce basé sur spring (m.youssfi)
 
Support programmation orientée objet c# .net version f8
Support programmation orientée objet c#  .net version f8Support programmation orientée objet c#  .net version f8
Support programmation orientée objet c# .net version f8
 
Spring ioc
Spring iocSpring ioc
Spring ioc
 
Connexion jdbc
Connexion jdbcConnexion jdbc
Connexion jdbc
 
Formation JAVA/J2EE
Formation JAVA/J2EEFormation JAVA/J2EE
Formation JAVA/J2EE
 
Angular Avancé
Angular AvancéAngular Avancé
Angular Avancé
 
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
 
Support de cours EJB 3 version complète Par Mr Youssfi, ENSET, Université Ha...
Support de cours EJB 3 version complète Par Mr  Youssfi, ENSET, Université Ha...Support de cours EJB 3 version complète Par Mr  Youssfi, ENSET, Université Ha...
Support de cours EJB 3 version complète Par Mr Youssfi, ENSET, Université Ha...
 
Support de cours entrepise java beans ejb m.youssfi
Support de cours entrepise java beans ejb m.youssfiSupport de cours entrepise java beans ejb m.youssfi
Support de cours entrepise java beans ejb m.youssfi
 
Spring mvc
Spring mvcSpring mvc
Spring 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
 
Introduction à spring boot
Introduction à spring bootIntroduction à spring boot
Introduction à spring boot
 

En vedette

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
 

En vedette (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
 

Similaire à 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
 
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
 
Spring Meetup Paris - Back to the basics of Spring (Boot)
Spring Meetup Paris - Back to the basics of Spring (Boot)Spring Meetup Paris - Back to the basics of Spring (Boot)
Spring Meetup Paris - Back to the basics of Spring (Boot)Eric SIBER
 

Similaire à 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
 
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
 
Spring Meetup Paris - Back to the basics of Spring (Boot)
Spring Meetup Paris - Back to the basics of Spring (Boot)Spring Meetup Paris - Back to the basics of Spring (Boot)
Spring Meetup Paris - Back to the basics of Spring (Boot)
 

Plus de 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
 

Plus de 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
 

Dernier

presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptxpresentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptxsiemaillard
 
Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024frizzole
 
L’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numériqueL’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numériqueSKennel
 
Poetry Prison Comoro, Railings All Around
Poetry Prison Comoro, Railings All AroundPoetry Prison Comoro, Railings All Around
Poetry Prison Comoro, Railings All AroundEditions La Dondaine
 
Module 1 Histoire du trading - finance . 2024
Module 1 Histoire du trading - finance . 2024Module 1 Histoire du trading - finance . 2024
Module 1 Histoire du trading - finance . 2024taharahmed11
 
Découvrir le métier d'archiviste
Découvrir le métier d'archivisteDécouvrir le métier d'archiviste
Découvrir le métier d'archivisteArchivesdeLyon
 
Offres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxOffres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxMissionLocale
 
Activités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfActivités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfLallaJamilaFtaich1
 
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptxMARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptxMartin M Flynn
 
La fille de son père.pptx. Film français tourné en France
La fille de son père.pptx. Film français tourné en FranceLa fille de son père.pptx. Film français tourné en France
La fille de son père.pptx. Film français tourné en FranceTxaruka
 
calendrier 12.02.2024
calendrier 12.02.2024calendrier 12.02.2024
calendrier 12.02.2024frizzole
 
SQCDP.Etudiants.pptx
SQCDP.Etudiants.pptxSQCDP.Etudiants.pptx
SQCDP.Etudiants.pptxTouhemiSyrina
 

Dernier (15)

presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptxpresentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
presentation parents_orientation_en-ligne_3e_phase-provisoire2024(1).pptx
 
Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024Calendrier de la semaine du 19 au 23 février 2024
Calendrier de la semaine du 19 au 23 février 2024
 
L’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numériqueL’ingénierie de l’éducation à l’ère du numérique
L’ingénierie de l’éducation à l’ère du numérique
 
Poetry Prison Comoro, Railings All Around
Poetry Prison Comoro, Railings All AroundPoetry Prison Comoro, Railings All Around
Poetry Prison Comoro, Railings All Around
 
Module 1 Histoire du trading - finance . 2024
Module 1 Histoire du trading - finance . 2024Module 1 Histoire du trading - finance . 2024
Module 1 Histoire du trading - finance . 2024
 
Découvrir le métier d'archiviste
Découvrir le métier d'archivisteDécouvrir le métier d'archiviste
Découvrir le métier d'archiviste
 
Offres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptxOffres d'emploi (Mise à Jour le 19/02).pptx
Offres d'emploi (Mise à Jour le 19/02).pptx
 
Échos Burkina Faso 101
Échos Burkina Faso 101Échos Burkina Faso 101
Échos Burkina Faso 101
 
Principales ressources cartographiques et statistiques Centre GéoStat (2024)
Principales ressources cartographiques et statistiques Centre GéoStat (2024)Principales ressources cartographiques et statistiques Centre GéoStat (2024)
Principales ressources cartographiques et statistiques Centre GéoStat (2024)
 
Activités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdfActivités mercredis cycle 3 - año 2020.pdf
Activités mercredis cycle 3 - año 2020.pdf
 
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptxMARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
MARTYRS DE LIBYE – Histoire des victimes coptes de IS..pptx
 
l'approche actionnelle.pptx
l'approche actionnelle.pptxl'approche actionnelle.pptx
l'approche actionnelle.pptx
 
La fille de son père.pptx. Film français tourné en France
La fille de son père.pptx. Film français tourné en FranceLa fille de son père.pptx. Film français tourné en France
La fille de son père.pptx. Film français tourné en France
 
calendrier 12.02.2024
calendrier 12.02.2024calendrier 12.02.2024
calendrier 12.02.2024
 
SQCDP.Etudiants.pptx
SQCDP.Etudiants.pptxSQCDP.Etudiants.pptx
SQCDP.Etudiants.pptx
 

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.