Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
💥 Les 22 & 23 novembre : Accès 100% GRATUIT
à la Bibliothèque Numérique ENI. Je m'inscris !
  1. Livres et vidéos
  2. Développement informatique
  3. Servlet
Extrait - Développement informatique Apprenez à concevoir avant de programmer
Extraits du livre
Développement informatique Apprenez à concevoir avant de programmer
3 avis
Revenir à la page d'achat du livre

Servlet

Objectif des chapitres sur les Servlets et les JSP

Développer des applications web écrites en Java, en utilisant les Servlets et les JSP.

Architecture des travaux pratiques de ces chapitres :

images/03021a.png

Le client est un navigateur web, qui génère des requêtes HTTP transmises au serveur. Celui-ci les traite, en accédant éventuellement au serveur de bases de données. Il répond ensuite au client, sous forme d’un flux HTML.

HTTP (HyperText Transfer Protocol) définit une syntaxe de commandes. Les commandes les plus courantes envoyées par un navigateur web au serveur sont des commandes de type GET et POST.

La réponse du serveur est exprimée en langage HTML (HyperText Markup Language), souvent utilisé conjointement avec le langage de programmation JavaScript et des feuilles de style (CSS).

Servlets : généralités

1. Définition

Une Servlet est une classe spécialisée dans le traitement des requêtes d’un client.

2. Traitement d’une requête par une Servlet

images/03022a.png

Un client (généralement un navigateur web) envoie une requête au serveur, qui l’analyse.

Si le serveur constate que cette requête fait appel à une Servlet, il appelle un programme spécialisé dans le traitement des Servlets, nommé conteneur de Servlets. Ce programme se charge d’instancier et d’initialiser un objet Servlet. Il lance ensuite une méthode de cet objet pour traiter la requête du client. Cette méthode reçoit automatiquement en paramètres deux objets créés par le conteneur :

  • Un objet qui contient toutes les données de la requête. La classe de cet objet implémente l’interface javax.servlet.ServletRequest.

  • Un objet qui permet de répondre au client. La classe de cet objet implémente l’interface javax.servlet.ServletResponse.

L’objet Servlet traite la requête et répond au client.

Le conteneur de Servlets gère également la destruction des instances de Servlet.

La principale utilisation des Servlets est l’interprétation de requêtes HTTP et la génération de pages HTML dynamiques. Les clients sont donc généralement...

Première Servlet : projet Servlet1

1. Écrans du projet Servlet1

L’utilisateur de l’application peut saisir son nom et son mot de passe, et choisir un "Type d’accès". Le bouton Envoyer permet d’envoyer les informations au serveur, qui retourne une réponse adaptée aux données saisies.

images/03023a.png

2. Enchaînement des programmes et des écrans du projet Servlet1

  • L’écran d’accueil de l’application est affiché par le programme index.html.

  • Les données saisies sont transmises à la Servlet ServletValidation.

  • La Servlet fait appel à la classe Validation, pour valider l’utilisateur.

  • En fonction du résultat de la validation, la Servlet affiche l’un des trois écrans (utilisateur inconnu, mot de passe incorrect, accès autorisé).

images/03023b.png

3. index.html

L’en-tête du document HTML précise le codage utilisé (utf-8), et le fichier de mise en page (miseEnPage.css) :


<!DOCTYPE html> 
 
<html> 
    <head> 
        <title>Accueil</title> 
        <meta http-equiv="Content-Type" 
              content="text/html; charset=utf-8" /> 
        <link rel="stylesheet"  
              type="text/css" 
              href="miseEnPage.css" /> 
    </head> 
 

L’écran d’accueil contient un formulaire. Lors de la validation, une requête HTTP de type POST est envoyée au serveur, et traitée par la Servlet ServletValidation :


    <body> 
        <form action="ServletValidation" method="post">
 

Le formulaire contient des champs de saisie, qui possèdent un attribut name. Cet attribut permet à ServletValidation de les identifier. Les boutons radio possèdent un attribut value, qui indique à ServletValidation le choix effectué par l’utilisateur :


                . . . 
 
                <input type="text" 
      ...