Le cycle de vie d'une servlet |
Le cycle de vie d'une servlet est assuré par le conteneur de servlet. Ainsi afin d'être à même de fournir la requête à la servlet, récupérer la réponse ou bien tout simplement démarrer/arrêter la servlet, cette dernière doit possèder une interface un ensemble de méthodes prédéfinies) déterminée par le JSDK afin de suivre le cycle de vie suivant :
- le serveur crée un pool de threads auxquels il va pouvoir affecter chaque requête
- La servlet est chargée au démarrage du serveur ou lors de la première requête
- La servlet est instanciée par le serveur
- La méthode init() est invoquée par le conteneur
- Lors de la première requête, le conteneur crée les objets Request et Response spécifiques à la requête
- La méthode service() est appelée à chaque requête dans une nouvelle thread. Les objets Request et Response lui sont passés en paramètre
- Grâce à l'objet Request, la méthode service() va pouvoir analyser les informations en provenance du client
- Grâce à l'objet Response, la méthode service() va fournir une réponse au client
- La méthode destroy() est appelée lors du déchargement de la servlet, c'est-à-dire lorsqu'elle n'est plus requise par le serveur. La servlet est alors signalée au garbage collector (communément francisé en ramasse-miette)
Interface d'une servlet |
Pour créer une servlet il est indispensable de mettre en oeuvre l'interface javax.servlet.Servlet permettant au conteneur d'assurer le cycle de vie de la servlet.
La mise en place de l'interface (généralement réalisée en étendant javax.servlet.GenericServlet ou javax.servlet.HttpServlet) fait appel à cinq méthodes :
- la méthode init()
- la méthode service()
- la méthode getServletConfig()
- la méthode getServletInfo()
- la méthode destroy()
la méthode init() |
La méthode init() est appelée par le conteneur à chaque instanciation de la servlet
public void init(ServletConfig config) throws ServletExceptionLors de l'instanciation, le conteneur de servlet passe en argument à la méthode init() un objet ServletConfig permettant de charger des paramètres de configuration propres à la servlet.
En cas d'anomalie lors de l'appel de la méthode init(), celle-ci renvoie une exception de type ServletException et la servlet n'est pas initialisée.
la méthode getServletConfig() |
La méthode getServletConfig()
public ServletConfig getservletConfig()
la méthode service() |
La méthode service() est appelée à chaque requête d'un client.
public void service(ServletRequest req, ServletResponse res) throws ServletException, IOExceptionLes objets ServletRequest et ServletResponse sont automatiquement passés en paramètre à la méthode service() par le conteneur.
la méthode destroy() |
La méthode destroy() est appelée par le conteneur lors de l'arrêt du serveur Web.
public void destroy()La méthode destroy() attend la fin de tous les threads lancés par la méthode service() avant de mettre fin à l'exécution de la servlet.
Fournir des informations sur la servlet |
Certaines applications (comme Java Web Server Administration Tool) permettent d'obtenir des informations sur la servlet et de les afficher.
La méthode getServletInfo() lorsqu'elle est surchargée permet de retourner cette information sous forme d'objet String (elle retourne null par défaut).
public String getServletInfo()Voici un exemple d'utilisation de cette méthode :
public class autoformation extends HttpServlet { ... public String getServletInfo() { return "ecrites par Jean-Francois Pillou (webmaster@autoformation.c.la)";
Ajouter aux Favoris Ajouter aux votre page
Acceuil | Forum| Contactez-Nous | Annace |Chat| Music |Radios|Sockets |Protocoles|Windows NT
Langage C |Langage C++ | Assembleur | Java | Perl |Pascal/delphi | Visual basic|MERISE | SQL| JDBC| ODBC
ASP|CGI |HTML |DHTML |XML|Javascript |JSP |PHP|Servlets |VBScript |WAP |UNIX |Linux |MacOS|Windows 9x
Assemblage-PC |Modèle relationnel|Histoire-PC|Fonctionnement-PC|photo pour rire|MS-Dos|Architecture-PC
Flash MX |Word-2003|Power Point|Excel|Langage C|Langage Java|Visual Basic|La base XP | programming
Physique Arabic partie I|Programation en arabe|Physique Français|Internet| Sécurité Informatique
HTML |Agebre en Français|Math Français partie I|Physique Arabic partie II| الطرق العددية
Electricité| Math Français partie II|Math en Arabic|Agebre en Arabic| الأعداد العقدية
Tous les cours informatiques en vidéos |Droit Informatique |logiciels
Tous les cours physiques en vidéos |Microsoft office
Cours math en vidéos | Msn en ligne
TV Live
Autoformations les cours informatiques en vidéos gratuitement
:: Copyright © 2008 http://www.autoformations.co.cc All rights reserved ::