Introduction exemples Cycle de vie d’une JSP Utilisation de tagWeb Tier : la technologie JavaServer Pages JSPCours Java - F. Michel1 / 34Introduction exemples Cycle de vie d’une JSP Utilisation de tagPlan1 Introduction2 exemples3 Cycle de vie d’une JSP4 Autres exemples : Utilisation d’une librairie de tagCours Java - F. Michel2 / 34Introduction exemples Cycle de vie d’une JSP Utilisation de tagLa technologie Java Server Pages JSPLa technologie JSP permet de créer facilement du contenu web ayantà la fois des composants statiques et des composants dynamiques.En fait, elle possède les même capacités dynamiques que les servletstout en permettant une approche plus naturelle pour la création decontenu statique.Principales caractéristiquesUn langage pour développer des JSP : documents texte qui décriventcomment traiter la requête et construire la réponse.Un langage pour accéder aux objets côté serveur.un mécanisme pour définir des extensions du langage JSPCours Java - F. Michel4 / 34Introduction exemples Cycle de vie d’une JSP Utilisation de tagUne page JSPPrincipeUne page JSP est un document texte qui contient 2 types de textes : dustatique (HTML, SVG, WML, and XML) et des éléments JSP quiconstruisent du contenu dynamiquement.L’extension est jsp. La page peut être composée d’autres fichiers(d’autres jsp complètes ou des fragments de jsp)Pour les fragments l’extension recommandée est .jspf.Deux syntaxes pour les jsp : standard et XML (une seule ...
un mécanisme pour définir des extensions du langage JSP
La technologie Java Server Pages JSP
Principales caractéristiques
Un langage pour développer des JSP : documents texte qui décrivent comment traiter la requête et construire la réponse.
Cours Java - F. Michel
La technologie JSP permet de créer facilement du contenu web ayant à la fois des composants statiques et des composants dynamiques. En fait, elle possède les même capacités dynamiques que les servlets tout en permettant une approche plus naturelle pour la création de contenu statique.
Une page JSP est un document texte qui contient 2 types de textes : du statique (HTML, SVG, WML, and XML) et des éléments JSP qui construisent du contenu dynamiquement.
L’extension est jsp. La page peut être composée d’autres fichiers (d’autres jsp complètes ou des fragments de jsp)
Pour les fragments l’extension recommandée est .jspf.
Deux syntaxes pour les jsp : standard et XML (une seule des deux peut être utilisée à la fois.
Insertion de blocs de code java : <%bloc java%> (scriptlet)
Cours Java - F. Michel
Une page JSP
453/
3/7
Cours Java - F. Michel
Première JSP : appel java simple
−8"
date.jsp
Affichage de la date
pageEncoding= " UTF−8"%> < !DOCTYPE h t m l PUBLIC "− HTML 4 . 0 1 T r a n s i t i o n a l / / EN"//W3C / / DTD " h t t p : / / www. w3 . o r g / TR / h t m l 4 / l o o s e . d t d " > < h t m l > <head> <meta h t t p−e q u i v = " Content− h a r s e t =UTF c o n t e n t = "Type " ; c t e x t / h t m l−8" > < t i t l e > d a t e page < / t i t l e > < / head> <body > H e l l o ! The t i m e i s now <%=new %>i l . Date ( ) . u t j a v a < / body > < / h t m l >
pageEncoding= " UTF−8"%> < !DOCTYPE h t m l PUBLIC "− " h t t p : / / www. w3 . o r g / TR / h t m l 4 / l o o s e . d t d " > < h t m l > <head> <meta h t t p−e q u i v = " Content− h a r s e t =UTF ; cType " t e x t / h t m l c o n t e n t = "−8" > < t i t l e > d a t e page < / t i t l e > < / head> <body > <% / / T h i s i s a s c r i p t l e t . N o t i c e t h a t t h e " d a t e " v a r i a b l e we d e c l a r e / / he re i s a v a i l a b l e i n t h e embedded e x p r e s s i o n l a t e r on . / / on t h e s e r v e r l o g ( pour l e debug ) System . o u t . p r i n t l n ( " E v a l u a t i n g d a t e now " ) ; j a v a . u t i l . Date d a t e =newj a v a . u t i l . Date ( ) ; %> H e l l o ! The t i m e i s now <%= d a t e %> < / body > < / h t m l >
< h t m l > <head> <meta h t t p−e q u i v = " Content− t m l ; c h a r s e t =UTF cType " t e x t / h o n t e n t = "−8" > < t i t l e > d a t e page 3 </ t i t l e > < / head> <body > <% / / T h i s s c r i p t l e t d e c l a r e s and i n i t i a l i z e s " d a t e " System . o u t . p r i n t l n ( " E v a l u a t i n g d a t e now " ) ; j a v a . u t i l . Date d a t e =newi l . Date ( ) ; . u t j a v a %> H e l l o ! The t i m e i s now <% / / T h i s s c r i p t l e t g e n e r a t e s HTML o u t p u t o u t . p r i n t l n ( S t r i n g . v a l u e O f ( d a t e ) ) ; %> < / body > < / h t m l >
date3.jsp
Cours Java - F. Michel
Une JSP est (au final) une servlet :
Troisième JSP : utilisation de la variable out dans le scriptlet
/349
Quatrième JSP : utilisation de la variablerequest
1/043
< h t m l > <head> <meta h t t p−e q u i v = " Content− t e x t / h t m l ; cType " c o n t e n t = " h a r s e t =UTF−8" > < t i t l e > d a t e page 4 </ t i t l e > < / head> <body > <% d a t e " " c r i p t l e t s h i s T n i t i a l i z e s and i e c l a r e s d/ / System . o u t . p r i n t l n ( " E v a l u a t i n g d a t e now " ) ; j a v a . u t i l . Date d a t e =newj a v ai l . Date ( ) ; . u t %> H e l l o ! The t i m e i s now <% o u t . p r i n t l n ( d a t e ) ; o u t . p r i n t l n ( " < b r / > Your machine ’ s ad dre ss i s " ) ; o u t . p r i n t l n ( r e q u e s t . getRemoteHost ( ) ) ; %> < / body > < / h t m l >
date4.jsp
Elle définit donc aussi par défaut les objetsrequestetresponse:
< h t m l > <head> <meta h t t p−e q u i v = " Content− h a r s e t =UTF c ; t m l t e x t / h o n t e n t = " cType "−8" > < t i t l e > r e d i r e c t i o n < / t i t l e > <% / / e n v o i e au c l i e n t une r e d i r e c t i o n v e r s une n o u v e l l e page / / ( n o u v e l l e r e q u t e c l i e n t e ) response . s e n d R e d i r e c t ( a n o t h e r U r l ) ; %> < / body > < / h t m l >