EVALUATION EN JAVA EE  TEST  08

Examen JEE, examen corrige java ee, examen j2e

EXERCICE 1 (4 PTS)

1. Citer deux avantages et deux inconvénients d'une architecture multicouche?

2. Dans le domaine des serveurs d'applications, riter une solution propriétaire et payanté, et une solution libre et gratuite. (1 pt)

3. Donner l'arborescence des fichiers d'une application web de type JEE. (1 pt)

4. Donner la signature de la méthode d'une servelt qui traite une cothmande GET du protocole HTTP ? (1 pt)

EXERCICE 2 (5 PTS)

1. Quels sont les éléments constitutifs d'un serveur d'application? (1pt)

2. Quelle est la différence entre l'architecture client-serveur et le modèle MVC? (1pt)

3. Décrire par un schéma le modèle MVC sous le prisme de Java EE. Le schéma devra contenir les différentes couches de Java EE et préciser leur rôle. (1,5pts)

4. Définir le terme portée dans une application. Citer quatre types de portées (1,5pts)

Problème (11 pts)

Dans ce problème, l'utilisation des tags JSTL est préférable pour écrire les JSPs. Pour le mapping des tables de la base de données, vous pouvez utiliser JDBC. L'objectif est de développer une application Web permettant de gérer des contacts (créer un contact, rechercher un contact, modifier un contact, ...). Cette application doit être conforme au design pattern MVC (ie, des JSPs pour les vues, une Servlet comme contrôleur et des classes Java (JDBC) pour le modèle). Pour cela, on crée des JSPs pour afficher un contact, éditer un contact,... Chacune de ces JSPs communiquera avec une Servlet qui aura le rôle de contrôleur: ControllerServlet.java. L'idée ici est que toutes vos requêtes doivent être sous la forme: ControllerServlet?do_this=[action à exécuter], le paramètre do_this est récupéré par la ControllerServlet pour connaître l'action à effectuer (par exemple, sélectionner la JSP qui aura à afficher la réponse).

- Partie Modèle:

Vous devez commencer par créer la table Contact:

CREATE TABLE Contact (

ID CONTACT generated always as identity primary key,

FIRSTNAME VARCHAR(255),

LASTNAME VARCHAR(255),

EMAIL VARCHAR(255),

PHONE INTEGER,

ADDRESS VARCHAR(255),

PROFESSSION VARCHAR(125)

)

Dans le projet on suppose avoir un package nommé model sous le répertoire src. Il est nécessaire d'implémenter la classe Contact (un simple JavaBean à mapper avec JDBC) correspondant au mapping de la table Contact et la classe ContactFacade.java dans le package model.

-Partie Contrôleur:

Dans un package nommé controller, une servlet ControllerServlet.java implémente les fonctions provenant des besoins des JSPs développées dans la partie Vues.

- Partie Vues:

L'utilisateur arrive sur une page d'accueil accueil.jsp Cette page affiche la liste des contacts déjà créés. En plus, la page accueil.jsp contient les actions suivantes (liens):

-Créer un nouvean contact (redirection vers addContact.jsp)

-Supprimer un contact (redirection vers removeContact.jsp)

- Modifier un contact (redirection vers updateContact.jsp)

-Rechercher un contact (redirection vers searchContact.jsp)

La page acctueil.jsp se trouve dans le repertoire /Webapp de votre application en supposant vous utilisez Eclipse. Cette page utilise le tag JSTL dans le but de générer dynamiquement, un tableau HTML. sans utiliser une boucle << for >> en code Java.

Attention: les JSPs ne peuvent pas accéder directement à la base de données car dans MVC les Vues n'appellent pas directement le Modèle. En effet, tous les appels vers le Modèle (à travers ContactFacade.java) doivent passer par le Contrôleur ControllerServlet.java. Par exemple, pour accéder à la page d'accuell accueil.jsp, l'utilisateur doit appeler la ControllerServlet (URL : http://localhost:8080/Contacts/ControllerServlet). Ensuite, la ControllerServlet transmet la requête vers accueil.jsp. Enfin, accueil.jsp récupère la liste des contacts à partir de la requête et l'affiche.

La page addContact.jsp propose un formulaire qui contient des champs pour renseigner un contact. Ses champs doivent correspondre aux attributs de la classe Contact.java. Le formulaire doit également avoir un bouton submits et et un bouton annuler. Une fois le formulaire envoyé, il est traité par la servlet ControllerServlet. Par conséquent, il faut préciser à ControllerServlet l'action à effectuer.

La page addContact.jsp doit être créée dans Contacts/webapp/. Ensuite, la Servlet ControllerServlet récupère les informations du contact à partir des données du formulaire puis elle utilise le ContactFacade pour appeler la méthode addContact(long id, String firstname, String lastname, String email, ...). Cette méthode crée une instance de Contact, fixe ses attributs puis le sauvegarde dans la base de données. Même principe pour removeContact.jsp. Cette-page-propose un formulaire avec un champ nommé idContact et un bouton << submit >>. Une fois cliqué, l'utilisateur est Invité à confirmer la suppression par une boite de dialogue javaScript une fois confirmée; le formulaire fait appel à la servlet ControllerServlet qui récupère l'id du contact à partir des données du formulaire puis elle appelle la méthode deleteContact(long id) de ContactFacade. Cette méthode se charge d'effacer le contact portant cet id dans la base de données. Ainsi de suite pour les autres fonctionnalités,

1. Proposer un contenue du fichier web.xml pour effectuer le mapping pour des différentes fonctionnalités: afficher contacts, nouveau contact», «recherche et modifier contact. (1,5 pts)

2. Créer le bean représentant un contact et la classe ContactFacade pour l'accès à la base de données (avec ses différentes méthodes). (2,5 pts) (1,5 pts)

3. Créer le formulaire un nouveau contact (redirection vers addContact.jsp). (1,5 pts)

4. Créer la page modifier contact (redirection vers updateContact.jsp). (2 pts)

5. Créer la page Home contact» (reditection vers accueil.jsp)

6. Proposer un code pour le contrôleur ControllerServlet pour gérer les fonctionnalités du projet (2 pts

 

Correction sujet pandacodeur

ACCÉDER A LA CORRECTION

Correction Probleme :

 

Télécharger L'exercice Sous Forme de PDF

java ee test 08

Taille : 1.58 Mo

Télécharger

Encore Plus :

Teacher 3


 

...
SUJET 01 | JAVA EE

Quelle différence faites-vous entre une plateforme mobile et un système d’exploitation mobile  ...

EXAMEN JAVA EE 
...
 SUJET | JAVA EE

L'algorithme du tourniquet, circulaire ou round robin est un algorithme ancien, simple, fiable  ...

EXAMEN JAVA EE 
Aucune note. Soyez le premier à attribuer une note !

Ajouter un commentaire

Anti-spam