• Puissance :
• Disponibilité des API de Java.
• Manipulation d’images, connectivité aux bases de données (JDBC)…
• Efficacité :
• Utilisent des threads (processus légers) plutôt que des processus
système comme les CGI (Common Gateway Interface)
Le plus d’une servlet
• Sûreté :
• Typage fort de Java.
• Gestion des erreurs par exceptions.
• Fonctionnement dans une machine virtuelle.
• Faible coût :
• Plusieurs serveurs gratuits sont disponibles.
Architecture du conteneur servlet
Le serveur web est precisament
le conteneur servlet qui est à
l'ecoute des requetes HTTP.
Recevant la requete, il créer
BD
alors deux objets
HttpServletRequest et
HttpServletRsponse.
Le conteneur utilise les java
beans et les BD pour créer la
BD reponse qui le retourne au client.
Une ou plusieurs servlets
Une servlet peut être appelée par un client alors
qu’elle s’exécute déjà pour un autre client.
L’objet servlet unique s’exécute alors dans un
autre thread.
Certaines parties du code doivent être
synchronisées avec les techniques prévues en Java
pour ce faire.
Donc une ou plusieurs servlets peuvent etre
utilisées dans une applications.
Une première servlet
Résultat affiché
dans le
navigateur
• Définir une servlet nécessite d’importer les paquetages
suivants :
• import java.io.*;
• import javax.servlet.*;
• import javax.servlet.http.*;
service()
Response doPost()
nom de
la servlet
chemin de la classe
URL d’appel
Une application web peut comporter plusieurs servlets. Dans ce cas il faut répéter
<servlet> et <servlet-mapping> autant de fois que vous avez des servlets
Déploiement du .war sur le serveur
(nom du fichier .war)
(ressources statiques)
(servlets,
beans …)