exposé système informatique et réseau présentation de jsp et comparaison à php exposé de...
TRANSCRIPT
![Page 1: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/1.jpg)
Exposé SystèmeInformatique et RéseauPrésentation de JSP et comparaison à PHP
Exposé de Système - Informatique et Réseau
Cédric Jourdan – IR5
![Page 2: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/2.jpg)
PLAN
Introduction
JSP
PHP
Lequel choisir entre JSP et PHP
![Page 3: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/3.jpg)
INTRODUCTION
Les sites Internet sont de plus en plus riches
Interaction avec l’utilisateur
Connexions avec des Bases de données et d’autres applications
Langage script côté serveur
![Page 4: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/4.jpg)
JSP - (Java Server Pages)
Présentation
Exécution
![Page 5: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/5.jpg)
JSP Présentation
Standard Java permettant de développer des Applications Web interactives
Intégrable au sein d’une page HTML
Langage script exécuté du côté serveur
Répartition des tâches de développement
![Page 6: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/6.jpg)
JSP Présentation - Modèle
Demande de fichier JSP
![Page 7: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/7.jpg)
JSP Présentation – Syntaxe (1)
Exemple de code dans une page HTML<html>
<body>
<% String visitor = request.getParameter("name");
if (visitor == null) visitor = " World"; %>
Hello, <%= visitor %>!
</body>
</html>
Affichage “Hello, World !” pour une requête http://serveur.fr/helloScript.jsp
“Hello, Java !” pour une requête http://serveur.fr/helloScript.jsp?name=Java
![Page 8: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/8.jpg)
JSP Présentation – Syntaxe (2)
Les Balises: Les Directives
Pour transmettre au conteneur de JSP des informations de traitement spécifiques à une page
Les éléments scripts
Code JAVA compilé par le serveur Web
Les Commentaires
Pour ajouter du texte explicatif à une page JSP
Les actions
Elles permettent de réaliser plusieurs comportements différents (appel Applet, Servlet, JavaBean…)
![Page 9: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/9.jpg)
JSP Présentation - Implémentation
Séparation de la présentation et de l’implémentation
ImplantationPrésentation
Balises des JSP HTMLet style HTML
Composants JavaServlets
Java BeanClasses …
BalisesJSP
personnalisées
![Page 10: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/10.jpg)
JSP Exécution - Conditions
Serveur Web HTTP (Apache, Netscape Enterprise Server …)
Conteneur de JSP (Tomcat … )
JDK (Java Development Kit) contient un “Java Runtime Environment” (machine virtuelle), un compilateur …
![Page 11: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/11.jpg)
JSP Exécution - Servlets
Programme exécuté sur le serveur Web
Peut recevoir et émettre des requêtes HTTP
Les JSP sont transformées en Servlet
JVM
Servelet HelloWord
Requête
Serveur
Client(Navigateur)
GET http://www/servlets/HelloWordApplication Web
<HTML>….<HelloWord></b></body></html>
Réponse
Conteneur de Servlets
API Java “javax.servlet” et “javax.servlet.http”
![Page 12: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/12.jpg)
JSP Exécution - Fonctionnement
Envoie de la réponse
Compile la servlet JSP
Charge la servlet
Serveur HTTP
Servlet de page JSP
Servelet du compilateur de page
Génère la réponse
Analyse les JSP
Génère le source de la servelet
Servelet JSP courante?
Servelet JSP chargée?
Réception de la requête
Oui
Oui
Non
Non
Conteneur de JSP
![Page 13: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/13.jpg)
JSP Exécution – Fonctionnement (Étape 1)
client serveur + moteur
2 façons:
- le client charge une URL http:// www. univ-mlv. fr/ prog. Jsp
le navigateur construit une commande HTTP GET
GET /prog. jsp HTTP/ 1.1
- le client saisit des informations dans un formulaire et clique sur envoi
le navigateur construit une commande HTTP POST
avec les données du formulaire (chaîne de caractères)
POST /prog. jsp HTTP/ 1.1
Nom= Jourdan&Prenom= Cedric
![Page 14: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/14.jpg)
JSP Exécution – Fonctionnement (Étape 2)
serveur + moteur JSP
Le "moteur":
- à la 1ère invocation, crée une classe, la compile et l' instancie. Si la classe existe déjà, et elles aussi récente que la page HTML, on l’utilise.- crée un thread- invoque une méthode de la classe contenant le code à exécuter
La JSP:
- s'exécute sur le serveur Web
ServeurHTTP
JVM
ConteneurJSP Prog.jsp
Nom=Jourdan&Prenom=Cedric
2
![Page 15: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/15.jpg)
JSP Exécution – Fonctionnement (Étape 3&4)
1) JSP serveur + moteur
La JSP:
- produit son résultat
2) Serveur + moteur Client
Le serveur:
- propage le résultat au client dans une réponse HTTP
ServeurHTTP
JVM
ConteneurJSP
Prog.jspRéponse HTML
3
Serveur Web
Client(Navigateur)
4
Réponse HTML
![Page 16: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/16.jpg)
JSP Exécution – Mise en cache des sorties
Fonctionnement HTTP
Le client (Navigateur)
1) réception de l’en-tête HTTP
2) réception du corps de la réponse
Le Serveur
1) envoie de l’en-tête HTTP
(informations, cookies…)
2) émission de la page HTML
![Page 17: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/17.jpg)
JSP Exécution – Mise en cache des sorties (2)
Problème du protocole HTTP avec JSP- Envoie de l’en-tête HTTP avant d’avoir traité le code JSP
- On ne peut pas par exemple gérer les cookies avec JSP, car ils sont envoyés dans l’en-tête
Solution apportée par JSP- Mise en cache des résultats du traitement des pages JSP
- On envoie la réponse au client une fois le code Java traite
- On peut ainsi modifier l’en-tête HTTP
- Par défaut la mémoire tampon est de 8Ko
- Un tampon par Servelet
Caractéristiques du cache
![Page 18: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/18.jpg)
PHP – (Personal Home Page)
Langage script interprété du cote serveur
Intégrable au sein d’une page HTML
Simplicité d’écriture des scripts
![Page 19: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/19.jpg)
PHP - Exécution
Serveur HTTP
Envoie de la requête
Génération de la réponse
Processus PHPActivation du processus
PHP
Réception de la requête PHP
Réception des sorties PHP
![Page 20: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/20.jpg)
JSP ou PHP?
JSP PHPUtilise le langage Java qui est
totalement objet Langage procédurale avec la possibilité
de faire de l’objet
Grand nombre d’API Moins de possibilités de développement
Peut ce connecter à tout type de bases de données (avec JDBC)
Peut ce connecter à tout type de bases de données (avec ODBC)
Fonctionne “in process” et “out process”
Ajout d’un module pour supporter le “out process”
Les temps de réponses sont équivalents
Plus gourmand en ressources à cause de la JVM
Langage interprète à chaque appel
Processus léger, utilise les Threads Nouveaux processus pour l’exécution des scripts
Programmes portables Problèmes de portabilités
![Page 21: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/21.jpg)
JSP ou PHP? – Le meilleur choix
JSP demande une plus grande complexité d’apprentissage que PHP
JSP est plus oriente pour s’interfacer sur de gros applicatifs comme les systèmes d’informations
PHP est plus adapté à de petits applicatifs, qui demandent peux de développement
![Page 22: Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Exposé de Système - Informatique et Réseau Cédric Jourdan – IR5](https://reader036.vdocuments.fr/reader036/viewer/2022062318/551d9d84497959293b8bf76c/html5/thumbnails/22.jpg)
FIN
Bibliographie
Livre “JSP JavaServer Pages”, Duane K. FIELDS, Mark A. KOLB, édition Eyrolles.
java.sun.com/jsp/
www.php.net
www.commentcamarche.net
http://deneau.multimania.com/ - Veille Technologique
JAVA ET INTERNET, G. ROUSSEL, E. DURIS, édition Vuibert