Académique Documents
Professionnel Documents
Culture Documents
d'information
JEE
01- Introduction à JEE
Mohamed ZAYANI
2023/2024
1
01-Introduction JEE – Mohamed ZAYANI
Avant propos
• Application Distribuée (répartie)
▪ Développement réseaux / Architectures muti-tiers
▪ Outils ( composants / middlewares/ protocoles/ médias
de communication)
▪ Plateformes ( Dot Net / JEE /..)
▪ Solutions Java: Servlet / JSP / EJB / RMI / JDBC/..
• Application Web
▪ Distinguer entre Internet et Web
▪ Architecture client / serveur (front end / back end)
▪ Le protocole HTTP
▪ Site Web Statique / Dynamique
▪ Les langage du Web 2
01-Introduction JEE – Mohamed ZAYANI
Séparation des responsabilités
• Une application informatique est principalement conçue
en 3 couches (niveaux / tiers ):
▪ Présentation ( vue): interaction avec l’utilisateur
▪ Traitement métier (Logique applicative)
▪ Gestion des Données (accès, stockage)
IHM
SGBD
Interface graphique
Serveur applicatif Fichiers Excel
Navigateur Web
XML
SmartPhone
• Inconvénients
• un coût élevé dû à la technicité du serveur
• En cas de panne du serveur, aucun client n’a accès aux informations
• si trop de clients veulent communiquer avec le serveur ce dernier
risque de ne pas supporter la charge 6
01-Introduction JEE – Mohamed ZAYANI
Application web et internet
• A ne pas confondre l'internet et le web :
▪ l'internet est le réseau des réseaux: le support physique de l'information. C’est
un ensemble de machines, de câbles et d'éléments réseau éparpillés dans le
monde. Il utilise le protocole de communication IP (Internet Protocol)
1. les sites web dynamiques : ce sont des sites dont le contenu est
dynamique. En plus des langages précédemment cités, ils font
intervenir d'autres technologies : Java EE est l'une d'entre elles.
(il existe aussi la technologie PHP et Dot Net)
9
01-Introduction JEE – Mohamed ZAYANI
Architecture web
Client HTTP Requête HTTP Serveur Web Données
HTML PHP
+ Réponse HTTP JEE SGBD
CSS
Dot Net
+ HTML , CSS , Java Script
Node JS
Java script
• Le client HTTP ( web) est un navigateur web qui communique avec le serveur web ( ex: Apache
Tomcat).
• Une application web présente principalement deux parties:
2.La partie Front end: s’occupe de la présentation des Interfaces Homme Machine (IHM)
• Langages utilisés: HTML , CSS , Java Script
• Les deux parties « Backend » et « Front end » se communiquent à travers le protocole HTTP
10
01-Introduction JEE – Mohamed ZAYANI
Protocole HTTP
✓ HTTP : HyperText Tranfert Protocol:
• Protocole qui permet au client de récupérer des documents du serveur
• Ces documents peuvent être:
• statiques (contenu qui ne change pas : HTML, PDF, Image, etc..)
• ou dynamiques (Contenu généré dynamiquement au moment de la requête : PHP, JSP, ASP…)
• Ce protocole permet également de soumissionner les formulaires
✓ Une requête HTTP peut être envoyée en utilisant les méthodes suivantes:
• GET : Pour récupérer le contenu d’un document
• POST : Pour soumissionner des formulaires (Envoyer, dans la requête, des données saisies par
l’utilisateur )
• PUT pour envoyer un fichier du client vers le serveur
• DELETE permet de demander au serveur de supprimer un document.
• HEAD permet de récupérer les informations sur un document (Type, Capacité, Date de dernière
11
modification etc…) 01-Introduction JEE – Mohamed ZAYANI
Java EE (JEE)
• JEE est l’abréviation de JAVA Entreprise Edition
1- Requête
request 2- Réaliser des traitements
Vue R
au Controller Traitements
3- Stocker
format Model R Logique
HTML Servlet applicative
4- appeler 5- récupérer
7- Réponse
response Vue JSP
6- HTML
HTML
1. Le client envoie une requête HTTP de type GET ou POST vers le contrôleur représenté par un composant Web JEE
(Servlet) qui lit les données de la requête à partir de l’objet « request » de type HttpServletRequest.
2. Le contrôleur fait appel à la couche métier pour effectuer les traitements et récupère les résultats R.
3. Le contrôleur Stocke le résultat R dans le modèle . Le modèle est généralement une objet qui permet de stocker toutes les
données qui seront affichées dans la vue. Généralement, le contrôleur stocke le modèle dans l’objet « request » ou
« session ».
4. Le contrôleur fait appel à la vue JSP (Java Server Pages) en lui transmettant les mêmes objets « request » et
« response ». Cette opération s’appel Forwarding.
5. La vue JSP récupère le résultat à partir du modèle (passé à l’objet « request » ou « session »).
6. Le vue JSP génère dynamiquement une page HTML qui contient les résultats du modèle en utilisant l’objet « response »
La page HTML générée est envoyée dans le corps de la réponse01-Introduction
13
7. JEE – Mohamed
HTTP pour être affichée ZAYANI
dans le navigateur du client