• Aucun résultat trouvé

IFT1176 – TP3 – E05 Servlets, SQL et JDBC

N/A
N/A
Protected

Academic year: 2022

Partager "IFT1176 – TP3 – E05 Servlets, SQL et JDBC"

Copied!
1
0
0

Texte intégral

(1)

IFT1176 – TP3 – E05

Servlets, SQL et JDBC

Michel Reid

Date de remise: 10 juillet, 22h30 au plus tard.

Équipes: Le travail en équipe de deux est permis (même encouragé). Vous ne remettez alors qu'un travail par équipe.

Conseil: N'attendez pas la dernière semaine pour commencer, vous n'aurez pas le temps.

Remarque : Du 6 juillet au 12 juillet les heures d’ouverture des labos seront, de beaucoup, restreintes.

1. But

: Ce TP a pour but de vous faire pratiquer les servlets, SQL+ de oracle et JDBC.

2. Description :

Lors des précédents travaux pratiques, les banques de données des manèges et des parcs d’attractions étaient traitées avec des collections. Une personne quelconque pouvait effectuer une série de requêtes sur cette banque de données. Ces requêtes étaient traitées par des appels de méthodes (le tp#1) ou bien via une interface graphique (le tp#2).

Pour le tp#3,vous allez refaire sensiblement le même traitement mais avec une base de données dans un format "sql". De plus vous allez ajouter la possibilité d’interroger la base via le Web.

3. Travail à réaliser

Le travail à réaliser se découpe en 2 parties :

 Administration du contenu de la base (création des tables et insertions des données) et consultation (JDBC et GUI)

 Consultation de la base via le Web (JDBC et Servlets) Première partie (10 pts):

Écrivez un programme utilisant les JDBC pour créer les 3 tables nécessaires pour traiter les manèges, les parcs d’attractions et les liens entres eux.

Réutilisez votre interface graphique du tp2 pour accéder la base de données, ajouter des enregistrements à la base, sélectionner des enregistrements et afficher les résultats, vous devez :

a) Permettre toutes les opérations, du tp2, relatives aux chargement et ajout de données, à partir de la lecture de fichiers ou la saisie de données à travers votre interface graphique. La sauvegarde dans des fichiers n’est pas exigée, les données de la base de données étant persistantes. Les opérations de changements de la base de données ne seront pas traitées dans ce tp.

b) Permettre la sélection et l’affichage des informations de toutes les manèges présents à un parc choisi par l’usager. (affichez en ordre décroissant de vitesse des manèges).

c) Permettre la sélection et l’affichage (en ordre croissant des noms) des informations de tous les parcs contenant un manège choisi par l’usager .

d) Permettre la sélection et l’affichage des informations d’un parc.

e) Permettre la sélection et l’affichage des informations d’un manège.

f) Permettre la sélection et l’affichage des informations de tous les parcs, incluant les manèges qui y sont présents, situés dans un état choisi par l’usager. L’affichage sera fait en ordre croissant des noms de parcs et, pour chaque parc, en ordre croissant de noms de manèges.

Remarque Vous avez besoin d'un nom d'usager et de son mot de passe pour accéder à la base de données afin de réaliser les différentes requêtes. Ces paramètres (nom, mot de passe) ne doivent pas figurer dans votre programme java. Vous devez plutôt les lire du fichier userdata.txt. (nom tabulation password)

IFT1176 E05 TP3 (15 points) p. 1

(2)

Deuxième partie (5 pts):

a) Écrivez une page web avec 2 champs de saisie (Parc et vitesse) et 1 bouton pour permettre d’interroger la base de données:

b) Un click sur le bouton fera rechercher et afficher les manèges du parc saisie dont la vitesse est supérieure ou égale à la vitesse saisie. (affichez en ordre décroissant des vitesses, tri secondaire sur le nom des manèges).

Le parc sera tapé dans un champ de saisie et la vitesse dans un autre.

c) Écrivez une servlet qui reçoit cette information par une requête http/post, génère la requête SQL pour interroger la base et crée une page Web dynamique pour afficher les informations demandés.

Pour cette partie, vous devez créer un contexte nommé selon votre login qui servira pour la remise.

4. Remise :

Votre TP sera exécuté par les démonstrateurs sur une machine Windows avec le compilateur jdk 1.4.2. Il possède déjà dans son classpath la classe12.zip et la classe Servlet.jar. Si par choix vous décidez d'utiliser un autre compilateur ou une autre classe vérifiez que le code que vous avez produit (qui normalement fonctionne correctement chez vous) fonctionne bien sur les ordinateurs de la DESI.

Vous devez remettre, électroniquement, avec la commande remise, tous les fichiers java de la première partie, ainsi que le rapport décrit ci-dessous. De plus remettez les fichiers suivants:

nom description

login.zip Fichier zip contenant le contexte (avec comme nom, votre login) pour la partie 2, prenez soin de conserver l’arborescence.

userdata.txt nom usager, password pour oracle choisissez un mot de passe différent de Unix ou Windows avec la commande sql > passw ;

En plus de la remise électronique, vous devez aussi remettre un document, ne dépassant pas les 4 pages, expliquant la conception de vos programmes. Ce rapport doit inclure :

 Description des étapes de compilation et exécution, même si elles sont simples.

 Description des liens entre les tables

 Manuel (très court) d’utilisateur pour les parties 1 et 2.

Et faire deux types de remise:

Électronique : Tous les fichiers .java, login.zip, userdata.txt et le rapport.

Papier: Le rapport de 4 pages maximum.

Dans le répertoire où sont vos programmes, tapez:

remise ift1176 tp3 l’ensemble de vos fichiers

La procédure de remise a été décrite dans la démonstration #1.

Pénalité de retard Les laboratoires du pavillon principal de l’UdeM ferment le 12 juillet, donc aucun travail en retard ne sera accepté après le 12 juillet.

pour une remise

11 juillet : 3 points 12 juillet : 6 points

13 juillet ou plus : 15 points

5. Barème :

Ce TP3 est noté sur 15 points .

- La non remise électronique (volontaire ou par erreur) est sanctionnée par la note 0.

- La non remise papier de votre rapport vous pénalise de 5 points.

- Les programmes ne contenant pas d'en-tête, -2 points.

- Chaque partie (1 ou 2) qui ne compile pas : -5 par partie .

- Partie (1ou 2) qui compile mais ne fait les choses prévues dans la spécification: -5 par partie.

- Le code doit être lisible, bien indenté et commenté.

IFT1176 E05 TP3 (15 points) p. 2

Références

Documents relatifs

Vous pourrez persister et afficher d’autres résultats statistiques (occupation des caissiers, temps d’attente des clients), en utilisant d’autres formes graphiques

It can be used to • Discover the number of columns, column names, types, and length • Find out the table names for all columns in the result set • Determine whether a given column

• Cr´ eez maintenant une classe de configuration Spring pour pr´ eparer une instance de JdbcTemplate

1.1 Les objectifs de JDBC JDBC = Java Data Base Connectivity JDBC est bas´ e sur.. •

Le programme de la classe terminale comporte, comme en classe de première, deux parties synthèses chimiques et analyses physico-chimiques qui sont enrichies

ةماع ةرظن اهب نيقطانلا ريغل ةيبرعلا ميلعت ميلعت ناديمب اديازتم امامتها ةيضاملا ةليلقلا تاونسلا تدهش مامتهلاا اذه زرب دقو ،اهريغب نيقطانلل اهملعتو ةيبرعلا

Ces fiches de calculs rapides "Addi-vitesse" sont proposées tout au long de la période, puis lors du défi calcul mental en fin de période, une fiche "Addi-vitesse"

4°) absence de contrepartie au moins équivalente attendue du tiers après la clôture de l’exercice N ? Oui, la sortie de ressources probable est