Académique Documents
Professionnel Documents
Culture Documents
Unité d’Enseignement :
Environnements de
Développement
2
Syllabus du cours
Objectifs Généraux
Comprendre les architectures logicielles ainsi que leurs composants;
Comprendre les principaux patrons de conception (Design Patterns)
Etre capable de mettre en oeuvre certains patrons de conception
Décrire une architecture logicielle et produire la documentation
correspondante
Pré-requis
POO, UML, JAVA, GL1&2
3
Organisation du cours
4
Chapitre III:
Architecture J2EE
Servlet/JSP
6
PLAN Veuillez nous suivre…
Packaging d’une
Servlet application web
L'API Java Servlet est une application Java qui permet de générer
dynamiquement des données au sein d'un serveur HTTP.
Au même titre nous trouvons: CGI (Common Gateway Interface),
Langages de script coté serveur PHP, ASP (Active Server Pages)
Une Servlet s’exécute dans un moteur de Servlet ou
conteneur de Servlet permettant d’établir le lien entre la Servlet et
le serveur Web
Un serveur d'application permet de charger et d'exécuter les
servlets dans une JVM. C'est une extension du serveur web.
Définition
Servlet Rôle
Fonctionnement
8
Cycle de vie
Il génère un résultat;
Il envoi le résultat au client ;
Données explicites (Page HTML)
Données implicites (Response Header, Status code)
Définition
Servlet Rôle
Fonctionnement
9
Cycle de vie
Définition
Servlet Rôle
Fonctionnement
10
Cycle de vie
Définition
Servlet Rôle
Fonctionnement
12
Cycle de vie
Définition
Servlet Rôle
Fonctionnement
14
Cycle de vie
Première Servlet 16
Le servlet HelloWorld
Un servlet surcharge la classe HttpServlet
Il doit implanter au moins une des méthodes
• doGet
• doPost
• doPut
• doDelete
Première Servlet 17
Ne pas oublier d'importer la
bibliothèque Java des Servlets
Réponse sous
format HTML
Salut le monde!
Le résultat sur le client
l’interface HttpServletRequest 22
L'interface HttpServletResponse 24
Architecture de développement
26
d’une application web
Une application web est contenue dans un répertoire physique
sur le serveur
Une application web possède une hiérarchie de répertoires
et de fichiers
Le fichier web.xml 27
Le fichier web.xml 28
Servlet et Session 30
Création de la session
Conclusion 34
JSP: Compilation 36
3. Du code html
4. Page finale
JSP: Syntaxe 38
Directives
Scripts et Variables
Actions
Balises personnalisées
Directives JSP 39
Include
Inclure un autre fichier dans la page
<%@include file="Main.jsp"%>
Page
Plusieurs options pour cette directive
•Import : importe un package java
<%@page import="java.util.ArrayList"%>
Directives JSP 40
Taglib
Utilisation d’une bibliothèque de balises (Taglib)
<%@ taglib prefix="myprefix" uri="taglib/mytag.tld" %>
Eléments du script JSP 41
Déclaration
Définir des variables globales, Créer des méthodes Java
<%! private int sum=0; %>
<%! private getSomme(int a,int b)
{
return a+b;
}
%>
Scriptlet
Traitements Java autres que déclarations globales et
fonctions.
<%
sum=getSomme(2,5);
%>
Expressions
Afficher une expression dans la page JSP.
<p> La somme est : <%=sum%> </p>
Commentaire
Insérer un commentaire dans le code JAVA
<%--
Ceci est un commentaire
--%>
Variables implicites 43
Web Component
Une application Web (*.html, *.jsp, servlets, …) packagée dans un archive (.war)
et est paramêtréedans le fichier WEB-INF/web.xml
Structure d’uneWeb Application Archive (.war)
•Fichiers Web de l’application (HTML, JSP, js, css…)
•Répertoire « META-INF » : fichiers de configuration
MANIFEST.MF : informations sur le zip
•Répertoire « WEB-INF » : contenu de l’application
WEB-INF/web.xml: Fichier de déploiement, Paramêtragedes servlets,
types MIME additionnels, …
WEB-INF/classes/: .class des servlets et des classes (JavaBean, …)
associées
ressources additionnelles (localstring.properties, …)
WEB-INF/lib/:.jar additionnels provenant de tierce parties (comme des
drivers JDBC, TagLib(jsf, …), …
WEB-INF/tlds/: .tld décrivant les TagLibs
Complément: Exemple MVC avec
51
JSP/Servlet