Podcast
Questions and Answers
Une application Web est composée de plusieurs ___ ou ___ (URL).
Une application Web est composée de plusieurs ___ ou ___ (URL).
- classes
- liens (correct)
- fichiers
- chemins (correct)
En JEE, chaque page renvoyée est écrite dynamiquement par une classe Java appelée << servlet >>
En JEE, chaque page renvoyée est écrite dynamiquement par une classe Java appelée << servlet >>
True (A)
Quel est le rôle du descripteur de déploiement ?
Quel est le rôle du descripteur de déploiement ?
Le descripteur de déploiement est un fichier web.xml qui sert à configurer le déploiement de l'application web. Il contient des informations sur les servlets, les fichiers de ressources, les pages d'accueil et les pages d'erreurs.
Que fait l'annotation @WebServlet ?
Que fait l'annotation @WebServlet ?
Qu'est-ce qu'une servlet ?
Qu'est-ce qu'une servlet ?
Le protocole HTTP agit comme un protocole de ___ qui ___ :
Le protocole HTTP agit comme un protocole de ___ qui ___ :
Le type MIME (Multipurpose Internet Mail Extensions) est utilisé pour ___ :
Le type MIME (Multipurpose Internet Mail Extensions) est utilisé pour ___ :
Quelle est l'utilité d'une Servlet dans une application web JEE ?
Quelle est l'utilité d'une Servlet dans une application web JEE ?
Une servlet peut accéder à des informations sur le client à travers l'objet HttpServletRequest
Une servlet peut accéder à des informations sur le client à travers l'objet HttpServletRequest
Quels sont les deux types d'actions JSP disponibles pour le partage du contrôle ?
Quels sont les deux types d'actions JSP disponibles pour le partage du contrôle ?
Qu'est-ce qu'un filtre dans une application web JEE ?
Qu'est-ce qu'un filtre dans une application web JEE ?
Un filtre peut être implémenté au niveau du fichier web.xml ou avec des annotations.
Un filtre peut être implémenté au niveau du fichier web.xml ou avec des annotations.
Expliquez la différence entre doGet() et doPost() dans une servlet.
Expliquez la différence entre doGet() et doPost() dans une servlet.
La méthode init() d'une servlet est appelée une fois par servlet (à chaque création d'instance) et la méthode destroy() est appelée une fois par servlet (lorsque le serveur web s'arrête).
La méthode init() d'une servlet est appelée une fois par servlet (à chaque création d'instance) et la méthode destroy() est appelée une fois par servlet (lorsque le serveur web s'arrête).
Un objet RequestDispatcher permet de transférer une requête à une autre servlet ou page JSP.
Un objet RequestDispatcher permet de transférer une requête à une autre servlet ou page JSP.
Quelle est la différence entre l'action jsp:include et l'action jsp:forward ?
Quelle est la différence entre l'action jsp:include et l'action jsp:forward ?
Lequel de ces éléments JSP permet d'envoyer du texte au navigateur du client ?
Lequel de ces éléments JSP permet d'envoyer du texte au navigateur du client ?
Quel est le but de la directive JSP <%@ page ... %> ?
Quel est le but de la directive JSP <%@ page ... %> ?
Quelle est la principale caractéristique des Java Beans ?
Quelle est la principale caractéristique des Java Beans ?
L'action jsp:useBean permet d'initialiser et d'allouer un Java Bean à un scope spécifique dans une page JSP.
L'action jsp:useBean permet d'initialiser et d'allouer un Java Bean à un scope spécifique dans une page JSP.
Quels sont les deux principaux types de collaboration entre JSP ?
Quels sont les deux principaux types de collaboration entre JSP ?
Expliquez le rôle des actions jsp:setProperty et jsp:getProperty dans une page JSP.
Expliquez le rôle des actions jsp:setProperty et jsp:getProperty dans une page JSP.
Flashcards
Qu'est-ce qu'une application Web en JEE?
Qu'est-ce qu'une application Web en JEE?
Une application Web est composée de plusieurs liens ou chemins (URL) menant à des pages HTML distinctes. En JEE, chaque page renvoyée est générée dynamiquement par une classe Java appelée "servlet". L'ensemble des fichiers qui composent une application Web en JEE est nommé "contexte de l'application".
Qu'est-ce qu'une servlet ?
Qu'est-ce qu'une servlet ?
Une servlet est une classe Java exécutée côté serveur. Elle reçoit des requêtes HTTP d'un client web, effectue des traitements et génère une réponse HTTP dynamique renvoyée au client. Elle s'exécute sur un moteur de servlet, comme Tomcat, qui gère son cycle de vie et le passage des requêtes et des réponses.
Quel est le rôle du protocole HTTP ?
Quel est le rôle du protocole HTTP ?
Il s'agit d'un protocole de transport chargé de transmettre les requêtes du client vers la servlet et les réponses de la servlet vers le client. Il permet au client de récupérer des fichiers statiques (PDF, images) et dynamiques (JSP, ASP) et de soumettre des formulaires.
Quelles sont les principales méthodes HTTP ?
Quelles sont les principales méthodes HTTP ?
Signup and view all the flashcards
Quelles sont les parties d'une requête/réponse HTTP ?
Quelles sont les parties d'une requête/réponse HTTP ?
Signup and view all the flashcards
Qu'est-ce que MIME ?
Qu'est-ce que MIME ?
Signup and view all the flashcards
Qu'est-ce qu'une servlet en termes de code ?
Qu'est-ce qu'une servlet en termes de code ?
Signup and view all the flashcards
Qu'est-ce qu'un "chemin virtuel" pour une servlet ?
Qu'est-ce qu'un "chemin virtuel" pour une servlet ?
Signup and view all the flashcards
Comment les servlets sont-elles organisées dans une application Web JEE?
Comment les servlets sont-elles organisées dans une application Web JEE?
Signup and view all the flashcards
Quel est le rôle du fichier web.xml ?
Quel est le rôle du fichier web.xml ?
Signup and view all the flashcards
Quel est le lien entre les annotations et le fichier web.xml ?
Quel est le lien entre les annotations et le fichier web.xml ?
Signup and view all the flashcards
Qu'est-ce qu'un paramètre d'initialisation pour une servlet ?
Qu'est-ce qu'un paramètre d'initialisation pour une servlet ?
Signup and view all the flashcards
A quoi sert l'annotation @WebServlet ?
A quoi sert l'annotation @WebServlet ?
Signup and view all the flashcards
A quoi sert l'annotation @WebInitParam ?
A quoi sert l'annotation @WebInitParam ?
Signup and view all the flashcards
A quoi sert l'API Servlet ?
A quoi sert l'API Servlet ?
Signup and view all the flashcards
Quelles sont les interfaces ServletConfig et ServletContext ?
Quelles sont les interfaces ServletConfig et ServletContext ?
Signup and view all the flashcards
Quelles sont les interfaces RequestDispatcher, ServletRequest et ServletResponse ?
Quelles sont les interfaces RequestDispatcher, ServletRequest et ServletResponse ?
Signup and view all the flashcards
Quelles sont les classes et interfaces SingleThreadModel et GenericServlet?
Quelles sont les classes et interfaces SingleThreadModel et GenericServlet?
Signup and view all the flashcards
Quelles sont les interfaces HttpServletRequest, HttpServletResponse et HttpSession ?
Quelles sont les interfaces HttpServletRequest, HttpServletResponse et HttpSession ?
Signup and view all the flashcards
Qu'est-ce qu'un cookie ?
Qu'est-ce qu'un cookie ?
Signup and view all the flashcards
A quoi sert l'API HttpSession ?
A quoi sert l'API HttpSession ?
Signup and view all the flashcards
Comment les servlets peuvent-elles collaborer ?
Comment les servlets peuvent-elles collaborer ?
Signup and view all the flashcards
Quelles sont les méthodes forward() et include() de RequestDispatcher?
Quelles sont les méthodes forward() et include() de RequestDispatcher?
Signup and view all the flashcards
Qu'est-ce qu'un filtre de servlet ?
Qu'est-ce qu'un filtre de servlet ?
Signup and view all the flashcards
Quelles sont les méthodes de l'interface Filter ?
Quelles sont les méthodes de l'interface Filter ?
Signup and view all the flashcards
Qu'est-ce qu'une page JSP ?
Qu'est-ce qu'une page JSP ?
Signup and view all the flashcards
Quelles sont les directives JSP ?
Quelles sont les directives JSP ?
Signup and view all the flashcards
Quand se produit l'inclusion de fichiers avec la directive <%@ include %> ?
Quand se produit l'inclusion de fichiers avec la directive <%@ include %> ?
Signup and view all the flashcards
Quel est le rôle de la directive <%@ page %> ?
Quel est le rôle de la directive <%@ page %> ?
Signup and view all the flashcards
Qu'est-ce qu'un scriplet JSP ?
Qu'est-ce qu'un scriplet JSP ?
Signup and view all the flashcards
Quel est le rôle d'un commentaire JSP ?
Quel est le rôle d'un commentaire JSP ?
Signup and view all the flashcards
A quoi sert une déclaration JSP ?
A quoi sert une déclaration JSP ?
Signup and view all the flashcards
A quoi sert une expression JSP ?
A quoi sert une expression JSP ?
Signup and view all the flashcards
Quels sont les objets implicites JSP ?
Quels sont les objets implicites JSP ?
Signup and view all the flashcards
Quel est le cycle de vie d'une page JSP ?
Quel est le cycle de vie d'une page JSP ?
Signup and view all the flashcards
Quelles sont les actions JSP ?
Quelles sont les actions JSP ?
Signup and view all the flashcards
Qu'est-ce qu'un Java Bean ?
Qu'est-ce qu'un Java Bean ?
Signup and view all the flashcards
Quelles sont les directives pour les Java Beans ?
Quelles sont les directives pour les Java Beans ?
Signup and view all the flashcards
Study Notes
Chapitre 2 : Les Servlets
- Une application Web (en JEE) est composée de plusieurs liens ou chemins (URL).
- Chaque lien mène à une page HTML différente.
- En JEE, chaque page renvoyée est écrite dynamiquement par une classe Java appelée « servlet ».
- L'ensemble des fichiers composant une application Web en JEE est appelée contexte de l'application.
Structure d'une application Web sous Tomcat
- Une application Web doit être déployée dans le dossier webapps.
- Elle doit avoir la structure suivante :
- Un dossier projet
- Un fichier d'accueil (index.html)
- Un fichier descripteur de déploiement (web.xml)
- Un dossier WEB-INF
- Un dossier classes contenant les fichiers .class des servlets
- Un dossier lib pour les fichiers de bibliothèques (.jar)
- web.xml : contient des informations de configuration pour l'application Web.
Description du déploiement
- La définition des différents liens et des servlets peut être :
- Soit rassemblée dans un fichier Web.xml contenant les chemins de toutes les servlets du projet.
- Soit définies individuellement au niveau des classes de chaque servlet en utilisant l'annotation
@WebServlet
.
Description du déploiement : Exemple: Gestion des Etudiants
- Exemple du fichier web.xml pour la gestion des étudiants
Description du déploiement : Cas des annotations
- Utilisation d'annotations pour définir les servlets.
Servlets
- Une Servlet est une classe Java fonctionnant du côté serveur.
- Elle reçoit des requêtes HTTP d'un client Web.
- Elle effectue un traitement.
- Elle écrit une réponse HTTP dynamique renvoyée au client Web.
- Une Servlet tourne sur un Moteur de Servlet ou conteneur de servlets (Tomcat) :
- Chargement de la servlet
- Gestion de son cycle de vie.
- Passage des requêtes et des réponses.
Le protocole HTTP
- HTTP est un protocole de transport qui transporte :
- La requête du client vers le servlet.
- La réponse du servlet vers le client.
- HTTP permet au client de récupérer des documents statiques ou dynamiques et de soumettre des formulaires (utilisation de méthodes comme GET ou POST).
Le protocole HTTP : Forme d'une requête/réponse HTTP
- Une requête HTTP se compose d'en-têtes et d'un corps.
- Une réponse HTTP se compose également d'en-têtes et d'un corps.
Le protocole HTTP : Types MIME
- MIME précise le type des données qui sont transportées dans une requête et une réponse HTTP.
- Exemples de types MIME : image/gif, image/jpeg, text/html, text/plain.
Une première Servlet
- Une servlet est une classe Java qui utilise des bibliothèques JEE pour écrire du HTML.
- Pour tourner sur le serveur Web, elle a besoin d'une configuration : chemin virtuel (URL pattern), paramètres d'initialisation, etc.
- Une application Web JEE est composée d'une ou plusieurs servlets.
- Un fichier index.html permet d'accéder aux différentes servlets.
Une première Servlet : avec annotation
- Un exemple de servlet annotée :
@WebServlet("/salut")
.
Une première Servlet : avec fichier index.html
Une première Servlet : avec fichier web.xml
Paramètres d'initialisation d'une servlet
- Les servlets peuvent admettre des paramètres d'initialisation.
- Ces paramètres sont stockés dans le fichier web.xml ou définis via des annotations.
L'annotation @WebServlet
- Sert à déclarer une servlet avec ses attributs (name, urlPatterns, initParams, etc.).
- Définir le nom et les chemins de la servlet.
L'annotation @WebInitParam
- Sert à définir un paramètre d'initialisation pour une servlet.
- Elle utilise les attributs name, value, et description.
L'API Servlet
- L'API Servlet fournit un ensemble de classes et d'interfaces pour gérer les servlets.
- Les classes sont dans deux packages : jakarta.servlet et jakarta.servlet.http.
Le package jakarta.servlet
- Ce package définit des interfaces, méthodes et exceptions pour les servlets.
Le package jakarta.servlet.http
- Ce package définit des interfaces et méthodes pour les servlets HTTP.
Notion de Contexte
- Une application Web se compose de plusieurs fichiers.
- L'ensemble des constituants d'une application est appelé contexte de l'application.
- Les servlets et les JSP d'une application partagent le même contexte.
La méthode init()
- Méthode d'initialisation d'une servlet.
- Appelée par le conteneur lors de la création d'une servlet.
La méthode service()
- Méthode d'exécution d'une servlet.
- Appelée par le conteneur pour chaque requête.
La méthode getServletConfig()
- Retourne un objet ServletConfig.
- Permet d'accéder au contexte de l'application.
La méthode getServletInfo()
- Retourne des informations sur la servlet.
- Utile pour documentation.
La méthode destroy()
- Méthode de destruction d'une servlet.
- Appelée par le conteneur lorsqu'une servlet est retirée.
Le cycle de vie d'une servlet
- Explique les étapes du cycle de vie d'une servlet.
Développer une servlet http
- Décrit les étapes pour créer et gérer une servlet HTTP.
Lecture d'une requête
- Décrit les méthodes utilisées pour accéder aux informations d'une requête HTTP.
Atelier 2
- Exemple concret demandant de récupérer des informations d'une requête.
Atelier 3
- Exemple complexe demandant la création d'un formulaire HTML et d'une servlet correspondante.
Atelier 6
- Exemple complexe demandant la création d'une servlet qui utilise les cookies.
Suivi de session : cookies
- Les cookies sont utilisés pour stocker des informations sur le client.
- Ils sont stockés dans le navigateur du client.
Suivi de session : HttpSession
- Une autre méthode pour suivre la session du client.
- Plus robuste que les cookies.
Collaboration de Servlets
- Les servlets peuvent collaborer pour partager des informations ou le contrôle d'une requête.
Filtres de Servlets
- Les filtres sont des classes qui permettent d'intercepter et de manipuler les requêtes et réponses.
JSP : Java Server Pages
- JSP combine le langage Java et les balises HTML.
- Facilite la génération de contenu dynamique pour les sites Web.
Traitement des JSP
- Le traitement d'une page JSP implique 4 étapes.
Structure d'un fichier JSP
Directives JSP
Directives JSP : include
Directives JSP : page
- La directive page définit les attributs spécifiques à une page JSP.
Éléments de scripts JSP : commentaire
Éléments de scripts JSP : déclaration
Éléments de scripts JSP : scriplet
Éléments de scripts JSP : expression
Java Beans et JSP : scope
- Définition des scopes (page, request, session, application) pour les beans.
Java Beans et JSP : lecture et écriture propriétés
- Comment accéder et modifier les propriétés des beans.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.