Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parJoscelin Janvier Modifié depuis plus de 10 années
1
Exposé de Système - Informatique et Réseau
Présentation de JSP et comparaison à PHP Exposé Système Informatique et Réseau Cédric Jourdan – IR5
2
PLAN Introduction JSP PHP Lequel choisir entre JSP et PHP
3
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
4
JSP - (Java Server Pages)
Présentation Exécution
5
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
6
JSP Présentation - Modèle
Demande de fichier JSP
7
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 “Hello, Java !” pour une requête
8
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…)
9
JSP Présentation - Implémentation
Séparation de la présentation et de l’implémentation Implantation Présentation Balises des JSP HTML et style HTML Composants Java Servlets Java Bean Classes … Balises JSP personnalisées
10
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 …
11
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 Application Web GET Conteneur de Servlets Servelet HelloWord Requête Réponse JVM Client (Navigateur) <HTML>….<HelloWord></b></body></html> Serveur API Java “javax.servlet” et “javax.servlet.http”
12
JSP Exécution - Fonctionnement
Serveur HTTP Réception de la requête Conteneur de JSP Servelet du compilateur de page Servelet JSP courante? Analyse les JSP Non Oui Servelet JSP chargée? Génère le source de la servelet Oui Non Charge la servlet Compile la servlet JSP Servlet de page JSP Génère la réponse Envoie de la réponse
13
JSP Exécution – Fonctionnement (Étape 1)
client serveur + moteur 2 façons: - le client charge une URL 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
14
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 Prog.jsp Serveur HTTP Conteneur JSP Nom=Jourdan&Prenom=Cedric 2 JVM
15
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 Prog.jsp Réponse HTML Serveur HTTP Réponse HTML Conteneur JSP 4 3 JVM Client (Navigateur) Serveur Web
16
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
17
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 Caractéristiques du cache Par défaut la mémoire tampon est de 8Ko Un tampon par Servelet
18
PHP – (Personal Home Page)
Langage script interprété du cote serveur Intégrable au sein d’une page HTML Simplicité d’écriture des scripts
19
Réception de la requête PHP
PHP - Exécution Serveur HTTP Réception de la requête PHP Activation du processus PHP Processus PHP Génération de la réponse Réception des sorties PHP Envoie de la requête
20
JSP ou PHP? JSP PHP Utilise 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
21
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
22
FIN Bibliographie Livre “JSP JavaServer Pages”, Duane K. FIELDS, Mark A. KOLB, édition Eyrolles. java.sun.com/jsp/ - Veille Technologique JAVA ET INTERNET, G. ROUSSEL, E. DURIS, édition Vuibert
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.