Structure JSP
Le serveur Web a besoin d'un moteur JSP, qui est un conteneur pour traiter les pages JSP. Le conteneur est chargé d'intercepter les requêtes de pages JSP. Ce didacticiel utilise Apache avec un conteneur JSP intégré pour prendre en charge le développement JSP.
Le conteneur JSP coopère avec le serveur Web pour fournir l'environnement d'exploitation et d'autres services nécessaires au fonctionnement normal de JSP, et peut identifier correctement les éléments spéciaux propres aux pages Web JSP.
La figure suivante montre l'emplacement du conteneur JSP et des fichiers JSP dans l'application Web.
Traitement JSP
Les étapes suivantes montrent comment un serveur Web utilise JSP pour créer une page Web :
-
Comme toute autre page Web normale, votre navigateur envoie une requête HTTP au serveur.
Le serveur Web reconnaît qu'il s'agit d'une demande de page Web JSP et transmet la demande au moteur JSP. Cela se fait à l'aide d'une URL ou d'un fichier .jsp.
Le moteur JSP charge les fichiers JSP à partir du disque et les convertit en servlets. Cette transformation convertit simplement tout le texte du modèle en instructions println() et convertit tous les éléments JSP en code Java.
Le moteur JSP compile le servlet dans une classe exécutable et transmet la requête d'origine au moteur du servlet.
Un composant du serveur Web appellera le moteur de servlet, puis chargera et exécutera la classe de servlet. Lors de l'exécution, le servlet génère une sortie au format HTML, l'intègre dans la réponse HTTP et la soumet au serveur Web.
Le serveur Web renvoie la réponse HTTP à votre navigateur sous la forme d'une page Web HTML statique.
En fin de compte, le navigateur Web traite les pages Web HTML générées dynamiquement dans la réponse HTTP comme s'il s'agissait d'une page Web statique.
Les étapes mentionnées ci-dessus peuvent être représentées par la figure suivante :
Généralement, le moteur JSP vérifiera si le servlet correspondant au fichier JSP existe déjà , et vérifiez si la date de modification du fichier JSP est antérieure à celle du servlet. Si la date de modification du fichier JSP est antérieure à celle du servlet correspondant, alors le conteneur peut être sûr que le fichier JSP n'a pas été modifié et que le servlet est valide. Cela rend l'ensemble du processus plus efficace et plus rapide que d'autres langages de script (tels que PHP).
En général, les pages Web JSP sont une autre façon d'écrire des servlets sans devenir un maître en programmation Java. Hormis la phase d'interprétation, une page Web JSP peut être traitée presque comme un servlet ordinaire.