Licence professionnelle
« Management des organisations »
Option « Systèmes d’information et Réseaux »
Internet et applications dans l’entreprise (3)
Serveur Tomcat et pages JSP
O. Auzende
2010-2011
2
Servlets java et Java Server Pages ........................................................................................................................... 3
Tests de servlets et de pages JSP ......................................................................................................................... 3
Utilisation de variables ........................................................................................................................................ 3
Insertion de fichier .............................................................................................................................................. 4
Elément spécifique à la programmation JSP ....................................................................................................... 4
L’objet request ................................................................................................................................................ 4
Connexion aux bases de données ........................................................................................................................ 5
Principe ........................................................................................................................................................... 5
Exemple : connexion à une base de données mySQL ..................................................................................... 5
Exercices ......................................................................................................................................................... 7
Internet et applications dans l’entreprise O. Auzende
3
Servlets java et Java Server Pages
Un servlet est un petit morceau de code Java qui étend les fonctionnalités d'un serveur Web.
Sun a développé un serveur entièrement en Java, le Java Web Server, qui fonctionne à base de servlets et est
disponible pour les plates-formes Windows et Solaris. Par ailleurs, Tomcat (issu du projet open source jakarta)
implémente, sous différents systèmes d’exploitation, un serveur HTTP simple comportant un moteur de servlets.
Tomcat est souvent couplé avec Apache.
Les Java Server Pages d’extension .JSP sont construites par-dessus les servlets : le moteur Java transforme les
fichiers .JSP en servlets (étape de traduction) puis exécute le servlet résultant qui génère la page HTML (étape de
requête).
Tests de servlets et de pages JSP
Le serveur Tomcat, issu du projet jakarta-tomcat et libre de droits, est téléchargeable sur Internet. Il nécessite
un JDK et peut être utilisé seul ou être couplé à Apache, sous Window ou sous Unix.
L’icône TOMCAT5 figure sur le bureau. Effectuer un double-clic sur l’icône ouvre une fenêtre de dialogue. Un
clic sur le bouton Start lance le serveur.
Le dossier pages de la disquette doit être recopié dans le dossier C:\Program Files\Apache Software
Foundation\Tomcat5.5\webapps, à côté de ROOT (alors que c’est gnéralement dans ROOT). L’appel des
pages via le serveur se fait par http://localhost:8080/pages/ Attention : PORT 8080
L’arrêt de Tomcat se fait en appyant sur le bouton Stop.
Utilisation de variables
La page date.jsp fait appel au constructeur et aux méthodes de la classe Date de java.util :
Page date.jsp
<HTML>
<HEAD>
<TITLE>Utilisation de variables</TITLE>
</HEAD>
<BODY>
<%! java.util.Date maintenant = new java.util.Date(); %>
<P>Date du jour : nous sommes aujourd'hui le <%= maintenant.getDate() %>/
<%= maintenant.getMonth() +1 %>/<%= maintenant.getYear() +1900 %></P>
</BODY>
</HTML>
4
La page compteur.jsp définit une variable globale de type int, incrémentée et testée :
Page compteur.jsp
<%! int count =0; %>
<HTML>
<HEAD><TITLE>Un compteur</TITLE></HEAD>
<BODY>
<% count = count + 1; %>
<P>Cette page a été visitée <%= count %> fois.</P>
<%
if (count == 1) {
out.print("<p>Vous &ecirc;tes le premier visiteur !</p>");
}
%>
</BODY>
</HTML>
Insertion de fichier
Page fonctions.jsp
Page sommetab.jsp
<%!
int somme(int[] tab) {
int s = 0 ;
for (int z = 0; z < tab.length ; z++)
s += tab[z] ;
return s ;
}
%>
<%!
int carre(int n) {
return n*n ;
}
%>
<%!
int cube(int n) {
return n*n*n ;
}
%>
<HTML>
<HEAD><TITLE>Exemple d'inclusion</TITLE></HEAD>
<BODY>
<%@include file="fonctions.jsp"%>
<%java.util.Random r = new java.util.Random();%>
<p>Voici un tableau de 20 entiers rempli par des
nombres tir&eacute;s au sort entre 0 et 100 :
</p>
<%int t[] = new int[20] ;%>
<%for (int i = 0 ; i < 20 ; i++) {
t[i] = r.nextInt(100);
}
%>
<%for (int i = 0 ; i < 20 ; i++) {%>
<%=t[i]%> &nbsp;*&nbsp;
<%}%>
<p>On calcule sa somme en utilisant la fonction
d&eacute;finie dans le fichier inclus. </p>
<p>La somme vaut : <%=somme(t)%> </p>
</BODY>
</HTML>
Exercice
En réalisant la même inclusion que ci-dessus, écrire la page carretab.jsp qui réalise
l’affichage ci-contre.
Elément spécifique à la programmation JSP
L’objet request
L'objet request permet de récupérer les valeurs des champs des formulaires.
La syntaxe est : request.getParameter("nom de la variable"), que la méthode soit
GET ou POST.
La page formulaire.jsp propose un formulaire faisant appel à la page requete.jsp
pour générer la réponse.
Internet et applications dans l’entreprise O. Auzende
5
Page formulaire.jsp
<html>
<head><title>Un formulaire</title></head>
<body> <form method="get" action="requete.jsp">
<p>Exemple de formulaire</p>
<table>
<tr><td>Nom :</td><td><input type="text" name="nom"></td>
</tr><tr><td>Pr&eacute;nom :</td>
<td><input type="text" name="prenom"></td>
</tr><tr><td>Ordinateur : </td>
<td>
<input type="radio" name="supp" value="mac" checked>Mac
<input type="radio" name="supp" value="pc"> PC
</td>
</tr><tr>
<td>Syst&egrave;me d'exploitation : </td>
<td><select name="sys">
<option value="win">Windows
<option value="linux">Linux
<option value="macos">Mac-OS
</select></td></tr>
</table>
<p><input type="submit" value="Confirmer"></p>
</form>
</body>
</html>
Page requete.jsp
<html>
<body> <p>Vous avez repondu : </p>
<table>
<tr><td>Nom : </td><td> <%=request.getParameter("nom")%></td></tr>
<tr><td>Pr&eacute;nom : </td>
<td> <%=request.getParameter("prenom")%> </td></tr>
<tr><td>Ordinateur : </td>
<td> <%=request.getParameter("supp")%> </td></tr>
<tr><td>Syst&egrave;me d'exploitation : </td>
<td> <%=request.getParameter("sys")%> </td></tr>
</table>
</body>
</html>
Connexion aux bases de données
Principe
Quatre classes java permettent de réaliser la connexion aux bases de données et de réaliser des requêtes :
o DriverManager permet de créer les connexions (objets de la classe Connection).
o Connection permet de créer un canal de communication vers une BD dont l’URL est connue. Un objet de
type Connection a pour attributs username et password, crée les Statements (requêtes SQL) et gère les
transactions.
o Statement permet de gérer les requêtes SQL simples, avec les méthodes executeQuery admettant une chaîne
SQL en paramètre et retournant un objet ResultSet, et executeUpdate() permettant la mise à jour et
renvoyant le nombre de rangées modifiées.
o Enfin, un objet de type ResultSet contient une rangée de données extraite de la base par une requête SQL.
La méthode next() permet d’accéder à la rangée suivante.
Exemple : connexion à une base de données mySQL
Lancer easyPHP sous Windows. Copier le fichier produits.dump fourni dans C:\program files\easyPHP1-
8\mysql\bin.
Dans une fenêtre d’invite de commandes, se placer dans le dossier C:\program files\easyPHP1-8\mysql\bin
Y créer et remplir la base de données produits :
Création de la base :
mysqladmin u root create produits Remplissage de la base :
mysql u root produits < produits.dump
1 / 8 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !