Expos de Systme Informatique et Rseau Expos Systme
- Slides: 22
Exposé de Système - Informatique et Réseau Exposé Système Informatique et Réseau Présentation de JSP et comparaison à PHP Cédric Jourdan – IR 5
PLAN q Introduction q JSP q PHP q Lequel choisir entre JSP et PHP
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
JSP - (Java Server Pages) q Présentation q Exécution
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
JSP Présentation - Modèle § Demande de fichier JSP
JSP Présentation – Syntaxe (1) § Exemple de code dans une page HTML <html> <body> <% String visitor = request. get. Parameter("name"); if (visitor == null) visitor = " World"; %> Hello, <%= visitor %>! </body> </html> § Affichage “Hello, World !” pour une requête http: //serveur. fr/hello. Script. jsp “Hello, Java !” pour une requête http: //serveur. fr/hello. Script. jsp? name=Java
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, Java. Bean…)
JSP Présentation - Implémentation § Séparation de la présentation et de l’implémentation Présentation Implantation Balises des JSP HTML et style HTML Composants Java Balises Servlets JSP Java Bean personnalisées Classes …
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 …
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 http: //www/servlets/Hello. Word Requête Réponse Client <HTML>…. <Hello. Word></body></html> (Navigateur) § API Java “javax. servlet” et “javax. servlet. http” Conteneur de Servlets Servelet Hello. Word JVM Serveur
JSP Exécution - Fonctionnement Serveur HTTP Réception de la requête Conteneur de JSP Servelet du compilateur de page Servelet JSP courante? Oui Servelet JSP chargée? Oui Non Analyse les JSP Génère le source de la servelet Non Charge la servlet Génère la réponse Envoie de la réponse Compile la servlet JSP Servlet de page JSP
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 /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
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 Serveur HTTP Conteneur JSP Nom=Jourdan&Prenom=Cedric Prog. jsp 2 JVM
JSP Exécution – Fonctionnement (Étape 3&4) § 1) JSP serveur + moteur § 2) Serveur + moteur Client La JSP: Le serveur: - produit son résultat - propage le résultat au client dans une réponse HTTP Réponse HTML 4 Client (Navigateur) Serveur HTTP Conteneur JSP Réponse HTML Prog. jsp 3 JVM Serveur Web
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
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 8 Ko - Un tampon par Servelet
PHP – (Personal Home Page) § Langage script interprété du cote serveur § Intégrable au sein d’une page HTML § Simplicité d’écriture des scripts
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
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
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
FIN § Bibliographie § Livre “JSP Java. Server 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
- Rseau contact
- Rseau
- Schema intestin
- Temps de digestion
- Casta systme
- Systme solaire
- Metric systme
- Introduction sur le système solaire
- Teamraiser training
- Systme solaire
- Metric systme
- Systme digestif
- Hyposialorrhée
- Digestion chimique
- Skidded heat systme
- Healthcare hrm systme market
- Réversibilité informatique
- Installation d'un poste informatique
- Fiche d'information
- Bascule jk
- Computer ethics and cyber security
- Dut stid programme
- Heartbeat informatique