- Servlets
-
Servlet
Une servlet est une application Java qui permet de créer dynamiquement des données au sein d'un serveur HTTP. Ces données sont le plus généralement présentées au format HTML, mais elles peuvent également l'être au format XML ou tout autre format destiné aux navigateurs web. Les servlets utilisent l'API Java Servlet (package
javax.servlet
).Une servlet s'exécute dynamiquement sur le serveur web et permet l'extension des fonctions de ce dernier, typiquement : accès à des bases de données, transactions d'e-commerce, etc. Une servlet peut être chargée automatiquement lors du démarrage du serveur web ou lors de la première requête du client. Une fois chargées, les servlets restent actives dans l'attente d'autres requêtes du client.
L'utilisation de servlets se fait par le biais d'un conteneur de servlets (framework) côté serveur. Celui-ci constitue l'environnement d'exécution de la servlet et lui permet de persister entre les requêtes des clients. L'API définit les relations entre le conteneur et la servlet. Le conteneur reçoit la requête du client, et sélectionne la servlet qui aura à la traiter. Le conteneur fournit également tout un ensemble de services standards pour simplifier la gestion des requêtes et des sessions.
Une ou plusieurs servlets constituent les applications web Java, leur principe de fonctionnement (architecture, fonctionnalités, configuration, déploiement) est décrit suivant une spécification officielle, menée par Sun Microsystems et à laquelle toute personne peut contribuer par le biais des Java Specification Requests (Java Community Process). La version actuelle des spécifications servlet est la 2.5.
Sommaire
Conteneurs de servlets
Il existe plusieurs conteneurs de servlets, dont Apache Tomcat ou encore Jetty. Le serveur d'application JBoss Application Server utilise Apache Tomcat.
Exemple de servlet classique
import javax.servlet.* ; import java.io.* ; public class HelloServlet extends GenericServlet { public void service (ServletRequest request, ServletResponse response) { try { PrintWriter out = response.getWriter() ; out.println ("<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01//EN\">") ; out.println ("<title>Bonjour le monde !</title>") ; out.println ("<p>Hello world!</p>") ; } catch (IOException e) { e.printStackTrace() ; } } }
Sortie générée après déploiement :
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> <title>Bonjour le monde !</title> <p>Hello world!</p>
Voir aussi
Liens externes
- (en) Sun Java Servlet Technology
- (en) JSR-000053 Java™ Servlet 2.3 and JavaServer Pages™ 1.2 Specifications
- (en) JSR-000154 Java™ Servlet 2.4 Specification
- (fr) Tutoriel : Les Servlets par Julien Gilli
- (fr) Le Cours Servlets et développement web par Serge Tahé
- (fr) Servlet & JSP - Laboratoire SUPINFO des technologies Sun
- (en) servlet tutorial
- (en) Sun's servlet tutorial
- (en) Apache Tomcat
- (en) Jetty
- Portail de l’informatique
Catégories : Java | Plateforme Java
Wikimedia Foundation. 2010.