0% ont trouvé ce document utile (0 vote)
25 vues13 pages

IHM-Java Chap 2 - PDF

Le document présente une initiation à l'architecture Java EE, expliquant les différences entre Java SE et Java EE, ainsi que les objectifs de Java EE pour le développement d'applications web. Il aborde également l'architecture client-serveur, le protocole HTTP, et introduit le modèle de conception MVC, qui sépare les préoccupations de traitement des données, de présentation et de contrôle des actions utilisateur. Enfin, il décrit les composants d'une application Java EE et les technologies associées.

Transféré par

mohammed.benakkaouayad
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
25 vues13 pages

IHM-Java Chap 2 - PDF

Le document présente une initiation à l'architecture Java EE, expliquant les différences entre Java SE et Java EE, ainsi que les objectifs de Java EE pour le développement d'applications web. Il aborde également l'architecture client-serveur, le protocole HTTP, et introduit le modèle de conception MVC, qui sépare les préoccupations de traitement des données, de présentation et de contrôle des actions utilisateur. Enfin, il décrit les composants d'une application Java EE et les technologies associées.

Transféré par

mohammed.benakkaouayad
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

28/02/2025

Chap2
Eléments de base de
l’architecture J2EE

IHM - Java

Plan du cours

Chap 1 : Initiation au Langage Java Chap 3 : Les Servlets


- Introduction - Les HttpServlet
- Eléments de base du langage - Servlet Package Hierarchy
- Les tableaux de données et chaines de caractères - doGet et doPost
- Les instructions d’écriture et de lecture - Réponse http
- Classes et Objets - Annotations serveur
- Héritage - Exécution d’une servlet
- Packages
- Classes internes et Interfaces
- Les exceptions
Chap 4 : Les JSP
- Définition d’une JSP (Java Server Page)
- Type d’éléments de balise JSP
Chap 2 : Initiation à l’architecture JEE - Balises usuelles JSP
- Définitions - EL : Expression Language
- Architecture client-serveur en http - JSTL
- Composantes d’une Application Web Java J2EE Chap 5 : Connexion à une base de données
- Protocole http
- L’API JDBC et les bases de données
- Commandes GET / POST / HEAD
- Connexion à une base de données relationnelle
- Le patron de conception Modèle-Vue-Contrôleur
- Émission de requêtes SQL vers la base
- Les PreparedStatement
IHM - Java 2
28/02/2025

Initiation à l’architecture J2EE


(CHAPITRE 2)

Qu’est-ce que Java EE :


• Java SE
Le terme « Java » fait bien évidemment référence à un langage, mais également à une plate-forme :
son nom complet est « Java SE » pour Java Standard Edition, et était anciennement raccourci « J2SE
». Celle-ci est constituée de nombreuses bibliothèques, ou API : citons par exemple [Link],
[Link], [Link], [Link], etc. Toutes ces bibliothèques que vous devez déjà connaître et
qui contiennent un nombre conséquent de classes et de méthodes prêtes à l'emploi pour effectuer
toutes sortes de tâches.

• Java EE
Le terme « Java EE » signifie Java To Enterprise Edition, et était anciennement raccourci en « J2EE ». Il
fait quant à lui référence à une extension de la plate-forme standard. Autrement dit, la plate-forme
Java EE est construite sur le langage Java et la plate-forme Java SE, et elle y ajoute un grand nombre
de bibliothèques remplissant tout un tas de fonctionnalités que la plate-forme standard ne remplit pas
d'origine.

IHM - Java 3

Initiation à l’architecture J2EE


(CHAPITRE 2)

Qu’est-ce que Java EE :


• Objectif du JEE
L'objectif majeur de Java EE est de faciliter le développement d'applications web robustes et
distribuées, déployées et exécutées sur un serveur d'applications.

• Java EE n’est pas Javascript


S'il est vrai que Java EE permet la création d'applications web, il ne faut pas pour autant le confondre
avec le langage Javascript, qui est lui aussi massivement utilisé dans les applications web.
Ce sont là deux langages totalement différents, qui n'ont comme ressemblance qu‘une partie de leur
nom

7
IHM - Java 4
28/02/2025

Initiation à l’architecture J2EE


(CHAPITRE 2)

L’écosystème de la technologie Java EE

IHM - Java 5

Initiation à l’architecture J2EE


(CHAPITRE 2)

Les sites internet

• Site web
Un site web est un ensemble constitué de pages web (elles-mêmes faites de fichiers HTML, CSS,
Javascript, etc.). Lorsqu'on développe puis publie un site web, on met en ligne du contenu sur internet.
On distingue deux types de sites internet: les sites statiques et les sites dynamiques

• Site internet statique


ce sont des sites dont le contenu est « fixe », il n'est modifiable que par le propriétaire du site. Ils sont
réalisés à l'aide des technologies HTML, CSS et Javascript uniquement.

• Site internet dynamique


ce sont des sites dont le contenu est « dynamique », parce que le propriétaire n'est plus le seul à
pouvoir le faire changer ! En plus des langages précédemment cités, ils font intervenir d'autres
technologies : Java EE est l'une d'entre elles !

IHM - Java 6
28/02/2025

Initiation à l’architecture J2EE


(CHAPITRE 2)

Architecture client serveur en http:


En HTTP, une méthode est une commande spécifiant un type de requête, elle demande au
serveur d’effectuer une action.

IHM - Java 7

Initiation à l’architecture J2EE


(CHAPITRE 2)

Architecture client serveur en http:


• Le client
Dans la plupart des cas, c'est le navigateur installé sur l’ordinateur.
Retenez que ce n'est pas le seul moyen d'accéder au web, mais c'est celui qui nous intéresse dans
ce cours.

• Le serveur
C'est la machine sur laquelle le site est hébergé, où les fichiers sont stockés et les pages web
générées.

IHM - Java 8
28/02/2025

Initiation à l’architecture J2EE


(CHAPITRE 2)

Le protocoleHTTP
• HTTP (HyperText Transfer Protocol )
La communication qui s'effectue entre le client et le serveur est régie par des règles bien définies du
protocole HTTP
1. l'utilisateur saisit une URL dans la barre d'adresses de son navigateur
2. le navigateur envoie alors une requête HTTP au serveur pour lui demander la page
correspondante
3. le serveur reçoit cette requête, l'interprète renvoie une réponse au client par le biais d'une
réponse HTTP ;
4. le navigateur reçoit, via cette réponse, la page web finale, qu'il affiche à l'utilisateur.

IHM - Java 9

Initiation à l’architecture J2EE


(CHAPITRE 2)

Les langages du web


Client (front-end) Serveur (back-end)
Interprété par le navigateur Interprété par le serveur

12

IHM - Java 10
28/02/2025

Initiation à l’architecture J2EE


(CHAPITRE 2)

Architecture basique en Java EE :

Provider

IHM - Java 11

Initiation à l’architecture J2EE


(CHAPITRE 2)

Architecture basique en Java EE :


 Exemple d’implémentation d’une architecture Java EE

 Exemples
Serveurs HTTP Serveurs d’application
apache Tomcat (Fondation Apache)
nginx Glassfish (Oracle)
Lighthttpd WildFly / JBoss (Red Hat)
IIS WebSphere (IBM)
… …

IHM - Java 12
28/02/2025

Initiation à l’architecture J2EE


(CHAPITRE 2)

Architecture basique en Java EE :


 Un serveur d’applications est un logiciel d’infrastructure offrant un contexte d’exécution
pour des composants applicatifs.
 Les serveurs d’applications peuvent aussi servir de serveur http.

Exemple : Tomcat sert de serveur d’applications et de serveur http

IHM - Java 13

Initiation à l’architecture J2EE


(CHAPITRE 2)

Architecture basique en Java EE :


 Exemple :

 Un serveur d’applications Tomcat sur

lequel deux applications sont déployées.

 Généralement, le serveur d’applications fournit aussi un ensemble de composants


accessibles au développeur de logiciels via des API standards définies pour la plate-forme
elle-même.
 Il fournit des fonctionnalités proches de celles offertes par un système d’exploitation.

 Le développeur se concentre principalement sur la logique de l’application : le “Business


Logic” ou la couche métier.
IHM - Java 14
28/02/2025

Initiation à l’architecture J2EE


(CHAPITRE 2)

Architecture basique en Java EE :


 Application Web Java J2EE:

- Une application Java EE assemble des composants:


• composants clients : HTML, CSS, JavaScript, jquery, bootstrap,ajax…
• composants Web : servlet et JSP
• composants business : EJB
- Les composants sont
• écrits en Java compilé en bytecode,
• assemblés dans l’application Java EE,
• déployés dans un serveur Java EE.

IHM - Java 15

Initiation à l’architecture J2EE


(CHAPITRE 2)

Architecture basique en Java EE :


 Application Web Java J2EE:

Une application web est archivée pour déploiement dans un fichier war (Web Application
Archive)

Tomcat

GlassFish

WildFly

IHM - Java 16
28/02/2025

Initiation à l’architecture J2EE


(CHAPITRE 2)

Architecture basique en Java EE :


 Rappels sur le protocole HTTP

En HTTP, une méthode est une commande spécifiant un type de requête, elle demande
au serveur d’effectuer une action

 Principales commandes en HTTP :


GET : méthode la plus courante pour demander une ressource,
POST : méthode utilisée pour transmettre des données en vue d’un traitement à une ressource.
HEAD : méthode qui ne demande que des informations sur la ressource (sans demander la
ressource elle-même)

IHM - Java 17

Initiation à l’architecture J2EE


(CHAPITRE 2)

Architecture basique en Java EE :

 Code d’état HTTP :


200 :succès de la requête
301 et 302 : redirection, respectivement permanente et temporaire
403 : accès refusé
404 : page non trouvée
500 et 503 : erreur serveur
504 : le serveur n’a pas répondu
IHM - Java 18
28/02/2025

Initiation à l’architecture J2EE


(CHAPITRE 2)

Le MVC
En anglais design pattern, c’est un modèle de conception (ou encore patron de conception). C'est une ligne
de conduite qui permet de décrire les grandes lignes d'une solution.
Le MVC est issu de l'expérience des concepteurs et développeur d'applications

• Pourquoi MVC?
Il est recommandé d’adopter le modèle MVC pour les raisons suivantes:
• Que l'on puisse être amené à travailler à plusieurs contributeurs sur un même projet ou une
même application (travail en équipe).

• Que l'on puisse être amené à maintenir et corriger une application que l'on n'a pas créée soi-
même.
• Que l'on puisse être amené à faire évoluer une application que l'on n'a pas créée soi-même.

IHM - Java 19

Initiation à l’architecture J2EE


(CHAPITRE 2)

Structure du MVC

• Le modèle MVC (Modèle-Vue-Contrôleur)


Il découpe littéralement l'application en couches distinctes, ce qui impacte très fortement l'organisation du
code.
• tout ce qui concerne le traitement, le stockage et la mise à jour des données de l'application
doit être contenu dans la couche nommée "Modèle" (le M de MVC) ;
• tout ce qui concerne l'interaction avec l'utilisateur et la présentation des données (mise en forme,
affichage) doit être contenu dans la couche nommée "Vue" (le V de MVC) ;
• tout ce qui concerne le contrôle des actions de l'utilisateur et des données doit être contenu
dans la couche nommée "Contrôle" (le C de MVC).

IHM - Java 20
28/02/2025

Initiation à l’architecture J2EE


(CHAPITRE 2)

Les composantsdu MVC

IHM - Java 21

Initiation à l’architecture J2EE


(CHAPITRE 2)

Java EE et MVC (1/3)


• Modèle: des traitements et données
Dans le modèle, on trouve à la fois les données et les traitements à appliquer à ces données.
Ce bloc contient donc des objets Java d'une part, qui peuvent contenir des attributs (données) et des
méthodes (traitements) qui leur sont propres, et un système capable de stocker des données d'autre part.

Stockage Traitement

Modèle
IHM - Java 22
28/02/2025

Initiation à l’architecture J2EE


(CHAPITRE 2)

Java EE et MVC (2/3)

• Vue: les pages JSP (Java Server Page)


Une page JSP est destinée à la vue. Elle est exécutée côté serveur et permet l'écriture de gabarits (pages
en langage "client" comme HTML, CSS, Javascript, XML, etc.).
Elle permet au concepteur de la page d'appeler de manière transparente des portions de code Java, via
des balises et expressions ressemblant fortement aux balises de présentation HTML.

IHM - Java 23

Initiation à l’architecture J2EE


(CHAPITRE 2)

Java EE et MVC (2/3)

• Contrôleur: des Servlets


Une servlet est un objet qui permet d'intercepter les requêtes faites par un client, et qui peut personnaliser
une réponse en conséquence. Il fournit pour cela des méthodes permettant de scruter les requêtes HTTP.
Cet objet n'agit jamais directement sur les données, il faut le voir comme un simple aiguilleur : il intercepte
une requête issue d'un client, appelle éventuellement des traitements effectués par le modèle, et ordonne
en retour à la vue d'afficher le résultat au client.

IHM - Java 24
28/02/2025

Initiation à l’architecture J2EE


(CHAPITRE 2)

MVC dansjavaJEE:

IHM - Java 25

Initiation à l’architecture J2EE


(CHAPITRE 2)

MVC dansjavaJEE
Avantages de MVC:
Séparer le code chargé de créer le contenu de celui chargé de le présenter.

Séparer les tâches de développement :


une équipe Servlet
une équipe JSP
une équipe SGBD.

IHM - Java 26

Vous aimerez peut-être aussi