© Philippe GENOUD UJF Février 2005 1
© Philippe GENOUD UGA Février 2017 1
Applications Web Java
Servlets
Philippe Genoud
© Philippe GENOUD UGA Février 2017 2
Poste client Serveur
objet Servlet
JVM
Servlet ?
Servlet (http://docs.oracle.com/javaee/7/tutorial/doc/servlets.htm)
classe Java pour étendre les possibilités de serveurs hébergeant des
applications accédées par un modèle de programmation de type requête-
réponse
servlets peuvent potentiellement répondre à tout type de requête mais
dans la réalité sont le plus souvent utilisées pour étendre des applications
hébergées par un serveur web
requêtes HTTP
(3) réponse
(1) requête (2) requête
(4) réponse
© Philippe GENOUD UGA Février 2017 3
objets ServletHTTP
contenu statique
contenu dynamique
Servlet ?
technologie java propose des classes de servlets spécifiques pour le protocole HTTP
(1) requête HTTP
(4) réponse HTTP
Poste client
Serveur
Serveur BD
API JDBC
les servlets s'exécutent dans des serveurs dédiés (servlets containers)
HTTP frontend
Client
(browser)
Web
requête HTTP
réponse HTTP
les servlets génèrent
des pages web dynamiques (comme PHP, ASP, ASP.NET, ...)
de manière plus générale n'importe quel contenu web dynamique (HTML, XML, JSON, etc …)
© Philippe GENOUD UGA Février 2017 4
Serveur Web
HTTP frontend
conteneur de servlets
servlet1
servlet2servlet3
Conteneurs de servlets
Conteneur de servlets
gère les échanges avec le client (protocole HTTP)
aiguille les requêtes vers les servlets
charge/décharge les servlets
Les servlets sont instanciées une seule fois, ensuite le traitement des requêtes s'effectue
de manière concurente dans des fils d'exécution (threads) différents
req1 client 1
req2 client 2
req2 client 1
une servlet n'est
instanciée qu'une fois et
peut servir simultanément
plusieurs clients
différentes servlets
pour différentes
requêtes
différents types de conteneur de servlets
conteneurs légers : Jetty, Resin, Apache Tomcat
conteneurs JEE complets : Glassfish, JBoss, WebSphere….
Java assure la portabilité d'un conteneur à un autre
req3 client3
Les servlets sont
chargées/instanciées
dynamiquement
© Philippe GENOUD UGA Février 2017 5
La plateforme JEE
De manière plus générale les Servlets s'inscrivent dans la plateforme JEE (Java
Entreprise Edition)
spécifications (API) pour le développement d’applications réparties basées sur un
ensemble de technologies Java http://docs.oracle.com/javaee/7/api/
Servlets, JSP(Java Server Pages), JSF (Java Server Faces) : pages web dynamiques
EJB (Entreprise Java Beans) : objets métiers
JDBC : API d'accès à des SGBD
JNDI (Java Naming an Directory Interface) : API pour nommage des objets
JTA (Java Transaction API) ; API pour gestion des transactions
JAAS (Java Authentication and Authorization Service)
Et de nombreuses autres…
S'appuie sur un modèle d'architecture multi-tiers (multi-couches)
1 / 61 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !