par David Bridgewater - Mis en ligne le 09/02/2005 - Publié en Mars 2004
Une application familière avec deux nouveaux
trucs : le code modularisé et les tags JSP
Dans l'article « Les JSP : visite rapide » , je montrais comment écrire une application JSP (JavaServer
Page) simple mais intéressante. L'application permet à l'utilisateur de filtrer
un fichier Employee au travers d'une large sélection de critères ; puis,
elle affiche les résultats sous forme de table dans une page Web, en incluant
le comptage du nombre d'employés trouvé ...Dans ce premier article, je signalais les défauts de conception de ma
méthode. Principale critique : mon code était monolithique, mélangeant
la logique de présentation, de gestion et de base de données - le genre de
pratique que nous avons tous délaissée dès l'arrivée de ILE et des programmes
de service. Je propose ici un exemple d'application de même
fonctionnalité, mais avec deux réaménagements importants :
1. Le code est modularisé.
2. Le JSP ne contient pas de Java. En lieu et place, on trouve des constructions
JSP différentes appelées tags.
Je ne prétends pas que cette nouvelle méthode soit le nec plus ultra
de la bonne conception, mais c'est une amélioration indiscutable.
Un guide rapide vers les JSP : rejoignez l’équipe des tages
Tout d’abord, vous devez installer et exécuter le code (www.itpro.fr
Club abonnés). Il est aussi intéressant d’avoir le code sous les yeux pendant
la lecture du reste de l’article. (Voir l’encadré « Installer, exécuter et
visualiser le code » www.itpro.fr Club Abonnés).
La version de cette application qui accompagnait mon premier article
ne contenait que deux fichiers : ils survivent dans la seconde version qui
accompagne le présent article. La page Web selection.html est très peu
modifiée. Cependant, la tableDisplay.jsp est radicalement réduite – de 340
lignes à un peu plus de 80.
Qu’est-il arrivé au code JSP ? Il n’a pas disparu mais il a été relogé dans
des endroits plus appropriés. On s’est débarrassé de tous les scriptlets et
des « déclarations » avec leurs délimiteurs si particuliers (<%!,%>). Le code – très peu modifié dans la plupart des cas – est principalement
distribué entre cinq nouveaux fichiers source Java :
Employee.java (dans le package uk.co.jbridge.tagarticle.
beans) est un « bean » Java représentant des informations
sur un employé. « Bean » désigne, en jargon Java, une
classe Java normale qui suit des standards particuliers. Le
seul standard qui importe à cette application est que l’information
employee – les « propriétés » de l’employé – peut
faire l’objet d’un accès par des méthodes nommées spécialement.
Pour accéder à une propriété appelée salary, on utilise
la méthode getSalary. Pour changer la propriété, on utilise la
méthode setSalary. Toutes les autres propriétés suivent cette
convention getPropertyName/setPropertyName.
ConnectionManager.java (dans le package uk.co.jbridge.
tagarticle.database) est une classe Java qui recherche
une connexion unique à une base de données. Cette classe
utilise le fichier connection.properties, que vous avez configuré
précédemment pour découvrir des attributs importants
à propos de la connexion.
EmployeeQuery.java (aussi dans le package uk.co.jbridge.
tagarticle.database) est une classe Java chargée d’exécuter
des requêtes sur une table spécifique appelée EMPLOYEE.
Les lignes présentes dans la table sont renvoyées à des instances
individuelles des beans Employee. Vous pouvez
considérer cette classe comme le pont entre la table base de
données et les objets que Java peut comprendre et utiliser.
ListEmployees.java (dans le package uk.co.jbridge.tagarticle.
servlets) est une sorte de classe Java spéciale de type
servlet. Un servlet est un programme Java côté serveur qui
obéit à certaines conventions. On peut utiliser un servlet directement
pour générer des pages Web. Toutefois, ce servlet
particulier a un autre but : il orchestre ce qui se passe après
qu’un utilisateur clique sur Submit Query dans la page Web
selection.html et avant qu’il n’arrive à la page de résultats
tableDisplay. jsp.
CyclingTag.java (dans le package uk.co.jbridge.tagarticle.
tags) est une classe Java qui fournit la fonctionnalité derrière
le tag custom JSP fourni avec cette application. Tout cela
sera approfondi sous l’intitulé « Un tag custom », plus loin
dans cet article.
Téléchargez cette ressource
Microsoft 365 Tenant Resilience
Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Ready For IT 2026 : quand l’accélération de l’innovation redessine les priorités des décideurs IT
- Microsoft Build 2026 : industrialiser l’IA agentique dans les environnements d’entreprise
- IA et souveraineté des données : les entreprises françaises redéfinissent les infrastructures IT
Articles les + lus
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
Rhea1 : SiPearl allume le CPU européen le plus ambitieux pour le HPC et l’IA souveraine
Analyse Patch Tuesday Mai 2026
À la une de la chaîne Tech
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
- Rhea1 : SiPearl allume le CPU européen le plus ambitieux pour le HPC et l’IA souveraine
- Analyse Patch Tuesday Mai 2026
