Вы находитесь на странице: 1из 2

ENIG Programmation 6 A.

U: 2020/2021
3ème GCR

TP1 SpringMVC

On désire développer, avec SpringMVC, une application Web de gestion des projets d’une
entreprise. Cette entreprise est organisée sous forme des départements.

L’application doit respecter les règles suivantes :


• Un département est caractérisé par un identifiant et un nom.
• Chaque département contrôle un ensemble des projets.
• Un projet est caractérisé par un identifiant, un titre et un état (non lancé, active, achevé).
• Un projet est développé dans un seul département.
• Un employé est caractérisé par un identifiant, un nom.
• Un employé travaille dans un seul projet.
• Un employé appartient à un unique département.
• Un employé possède une fonction dans le département (manager, ingénieur ou
technicien)

La gestion des données sera assurée par Spring Data.

L’application se compose de trois couches :


 model : définie par les classes Departement, Projet et Employe.
 dao : définie par les interfaces IDepartementDao, IProjetDao et IEmployeDao.
 controller : définie par la classe AppController représentant le contrôleur SpringMVC.
(NB : injecter directement les DAO dans le contrôleur)
Les interfaces web demandés :
• Interface web d’affichage de la liste des départements (Fig 1) (c’est l’interface principale)
• Interface web d’affichage de la liste des employés d’un département sélectionné. (Fig 2)
• Interface web d’affichage de la liste des projets d’un département sélectionné. (Fig 3)
• Interface web d’affichage de la liste des employés d’un projet sélectionné. (Fig 4)
• Interface web d’ajout d’un projet. (Fig 5)
• Interface web d’ajout d’un employé. (Fig 6)

Page 1 / 2
Le mapping handler:
Mapped => {[/home], methods=[GET] }
Mapped => {[/employes/dept/{num}], methods=[GET] }
Mapped => {[/projets/{num}], methods=[GET] }
Mapped => {[/employes/proj/{num}], methods=[GET] }
Mapped => {[/ajoutProjet], methods=[GET] }
Mapped => {[/saveEmploye], methods=[POST] }
Mapped => {[/ajoutEmploye], methods=[GET] }
Mapped => {[/saveProjet], methods=[POST] }
Figure1 Figure2

Figure3 Figure4

Figure5 Figure6

Notes:
Pour ajouter un context à un lien : <c:set var="cxt" value="${pageContext.request.contextPath}" />
<a href="${cxt}/home">Liste des départements</a>

Page 2 / 2

Вам также может понравиться