Institut Sup rieur des Etudes Technologiques de Bizerte
D partement Technologies de linformatique
Parcours :
Unit dEnseignement :
Mati re
D veloppement des Syst me dInformations
Environnement de D veloppement
Atelier Environnement de D veloppement
Atelier N 0 : Initiation la technologie Java EE
v Objectifs
Introduire la technologie Java EE et le mod le MVC.
Eclaircir le principe de fonctionnement du Java EE.
v Contenu
I. Quest ce que Java EE
II.
III.
Principes de fonctionnement
Le mod le MVC
I. Quest ce que Java EE
Le terme Java EE signifie Java Entreprise Edition; le langage Java accord la
plateforme Java EE qui ajoute la plateforme standard Java une panoplie de
biblioth ques enrichissant ses fonctionnalit s de base.
Lobjectif majeur de Java EE est de faciliter le d veloppement dapplication web
robustes et distribu es (r parties), d ploy es et ex cut es sur un serveur
dapplications.
! Attention : Java EE permet la cr ation dapplication web, il ne faut pas pour
autant le confondre avec le langage JavaScript (JS) massivement utilis dans les
applications web. Ce sont deux langages diff rents.
II. Principes de fonctionnement
1.
Internet et le Web
La diff rence entre Internet et le Web :
Linternet est le r seau, le support physique de linformation. Cest un
Publicité
ensemble de machines, de c bles et d l ments r seau parpill s sur la
surface du globe.
Le Web constitue une partie seulement du contenu accessible sur
internet.
Atelier Environnement de D veloppement
Page 1
Un site web est un ensemble de page web (des fichiers HTML, CSS, Javascript,
etc.). Lorsquon d veloppe puis publie un site web, on met en r alit son
contenu sur internet. On distingue deux types de sites :
- Les sites internet statiques : 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.
- Les sites internet dynamiques : 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.
2. Comment a marche ?
Lorsqu'un utilisateur consulte un site, ce qui se passe derri re les rideaux est un
simple change entre un client et un serveur.
-
-
le client : dans la plupart des cas, c'est le navigateur install sur
lordinateur.
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.
Figure1 : Echange dynamique client<->serveur
La communication qui s'effectue entre le client et le serveur est r gie par des r gles
bien d finies parle protocole HTTP. Un change simple est constitu des tapes
suivantes :
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 et g n re alors une page web qu'il va renvoyer
au client par le biais d'une r ponse HTTP.
Publicité
4. le navigateur re oit, via cette r ponse, la page web finale, qu'il affiche alors l'utilisateur.
Atelier Environnement de D veloppement
Page 2
Figure2 : Echange dynamique http client<->serveur
! A retenir : -Les donn es sont chang es entre le client et le serveur via le protocole HTTP.
- Le client ne comprend que les langages de pr sentation de donn es
(HTML, CSS et Javascript).
3. Le serveur dapplications
Pour pouvoir communiquer entre eux, le client et le serveur doivent se parler via
HTTP. C t client le navigateur sen occupe, c t serveur, qui sen charge ? Cest un
composant que lon nomme serveur HTTP, son travail est simple : il doit couter
tout ce qui arrive sur le port utilis par le protocole HTTP, le port 80, et scruter
chaque requ te entrante.
En effet, le serveur doit permettre deffectuer dautres t ches ; une fois la requ te
HTTP lue et analys e, il faut encore traiter son contenu et ventuellement renvoyer
une r ponse au client en cons quence. On parle dans ce cas du fonctionnement du
serveur dapplications.
Figure 3 : Architecture serveur
Atelier Environnement de D veloppement
Page 3
Concr tement, le serveur d'applications va :
-
-
-
-
r cup rer les requ tes HTTP issues des clients.
les mettre dans des bo tes, des objets, que le code fourni par le d veloppeur
sera capable de manipuler.
faire passer ces objets dans la moulinette qu'est lapplication web
dynamique, via le conteneur.
renvoyer des r ponses HTTP aux clients, en se basant sur les objets
retourn s par le code.
! Remarque : Dans nos futurs ateliers nous utiliserons le serveur dapplication Apache Tomcat
version 7.0
Publicité
III. Le mod le MVC
1. Qu'est-ce qu'un mod le de conception ?
En anglais design pattern , un mod le de conception (patron de conception) est
une simple bonne pratique, qui r pond un probl me de conception d'une
application. C'est une ligne de conduite qui permet de d crire les grandes lignes
d'une solution.
De tels mod les sont issus de l'exp rience des concepteurs et d veloppeurs
d'applications : c'est en effet uniquement apr s une certaine p riode d'utilisation que
peuvent tre mises en vidence des pratiques plus efficaces que d'autres, pratiques
qui sont alors structur es en mod les et consid r es comme standard.
2.
Quel mod le pour les applications Java EE ?
La technologie Java EE est con u particuli rement pour le developpement en
Entreprise ce qui implique que lon puisse :
- tre amen travailler plusieurs contributeurs sur un m me projet ou une m me
application (travail en quipe).
- tre amen maintenir et corriger une application que l'on n'a pas cr e soi-m me.
- tre amen faire voluer une application que l'on n'a pas cr e soi-m me.
Pour toutes ces raisons, le mod le MVC (Mod le-Vue-Contr leur) se voit le plus
ad quat au d veloppement dapplications Java EE.
Il d coupe litt ralement l'application en couches distinctes, et impose que :
Atelier Environnement de D veloppement
Page 4
-
-
-
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 Vde 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).
Publicité
Ce mod le peut tre repr sent par le sch ma suivant :
Figure 4 : MVC
3.
Le mod le MVC en pratique
Mod le : des traitements et des 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.
Vue : des pages JSP
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.
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 :
Atelier Environnement de D veloppement
Page 5
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.
Figure 5 : MVC avec Java EE
Compte Rendu :
Q1. Citez les composants dun serveur dapplications.
Q2. Quest ce quun mod le de conception ? Quelle est lutilit ?
Q3. Quelle est la r partition en couches dune application selon MVC
Atelier Environnement de D veloppement
Page 6