JAVA EE_2

10
JAVA EE Les Servlets : sont des applications Java fonctionnant du côté serveur (tels que ASP ou bien PHP). Elles s'exécutent dans un moteur de servlets utilisé qui sert à établir le lien entre la servlet et le serveur Web . 1. Reçoit des requêtes HTTP 2. Effectue traitement. 3. Fournit une réponse HTTP Si le type de la requête est GET, alors la méthode de la Servlet qui traite la requête est la suivante : void doGet(req, res) Si le type de la requête est POST alors elle est traitée par la méthode : void doPost(req, res) la servlet est crée puis initialisée void init() Cette méthode n’est appelée par le serveur qu’une seule fois lors du chargement en mémoire par le moteur de servlet. HttpServletRequest fournit un ensemble de méthodes pour avoir toutes les informations concernant une requête String getMethod() : Récupère la méthode HTTP utilisée par le client String getHeader(String name) : Récupère la valeur de l’entête demandée String getRemoteHost() : Récupère le nom de domaine du client String getRemoteAddr() : Récupère l'adresse IP du client String getServerName() : Récupère le nom du serveur String getServerPort() : Récupère le numéro de port du serveur String getParameter(String name) : Récupère la valeur du paramètre name d'un formulaire. Lorsque plusieurs valeurs sont présentes, la première est retournée String[] getParameterValues(String name) : Récupère les valeurs

description

JAVA EE_2

Transcript of JAVA EE_2

JAVA EE

Les Servlets :sont des applications Java fonctionnant du ct serveur (tels que ASP ou bien PHP).Elles s'excutent dans un moteur de servlets utilis qui sert tablir le lien entre la servlet et le serveur Web .

1. Reoit des requtes HTTP2. Effectue traitement.3. Fournit une rponse HTTP

Si le type de la requte est GET, alors la mthode de la Servlet qui traite la requte est la suivante: void doGet(req, res)

Si le type de la requte est POST alors elle est traite par la mthode : void doPost(req, res)

la servlet est cre puis initialise void init() Cette mthode nest appele par le serveur quune seule fois lors du chargement en mmoire par le moteur de servlet.

HttpServletRequest fournit un ensemble de mthodes pour avoir toutes les informations concernant une requteString getMethod() : Rcupre la mthode HTTP utilise par le clientString getHeader(String name) : Rcupre la valeur de lentte demandeString getRemoteHost() : Rcupre le nom de domaine du clientString getRemoteAddr() : Rcupre l'adresse IP du clientString getServerName() : Rcupre le nom du serveurString getServerPort() : Rcupre le numro de port du serveurString getParameter(String name) : Rcupre la valeur du paramtre name d'un formulaire. Lorsque plusieurs valeurs sont prsentes, la premire est retourneString[] getParameterValues(String name) : Rcupre les valeurscorrespondant au paramtre name d'un formulaire, c'est--dire dans le cas d'une slection multiple (cases cocher, listes choix multiples) les valeurs de toutes les entits slectionnesEnumeration getParameterNames() : Retourne un objet de type Enumeration contenant la liste des noms des paramtres passs la requteLire la requteA l'intrieur de la mthodeDoXXX()(Doget()ouDoPost()selon la mthode invoque) la requte de l'utilisateur est passe en paramtres sous forme d'objet (ou plus exactement l'interface)HttpServletRequest.Afin de comprendre son fonctionnement, il est essentiel de connatre la faon selon laquelle les requtes sont transmises du client au serveur parle protocole HTTP.Voici les diffrentes mthodes de l'objetHttpServletRequestMthodeDescription

String getMethod()Rcupre la mthode HTTP utilise par le client

String getHeader(String Key)Rcupre la valeur de l'attribut Key de l'en-tte

String getRemoteHost()Rcupre le nom de domaine du client

String getRemoteAddr()Rcupre l'adresse IPdu client

String getParameter(String Key)Rcupre la valeur du paramtre Key (cl) d'un formulaire. Lorsque plusieurs valeurs sont prsentes, la premire est retourne

String[] getParameterValues(String Key)Rcupre les valeurs correspondant au paramtre Key (cl) d'un formulaire, c'est--dire dans le cas d'une slection multiple (cases cocher, listes choix multiples) les valeurs de toutes les entits slectionnes

Enumeration getParameterNames()Retourne un objetEnumerationcontenant la liste des noms des paramtres passs la requte

String getServerName()Rcupre le nom du serveur

String getServerPort()Rcupre le numro de port du serveur

Crer la rponseDe la mme faon, la rponse fournir l'utilisateur est reprsente sous forme d'objetHttpServletResponse.Voici les diffrentes mthodes de l'objetHttpServletResponseMthodeDescription

String setStatus(int StatusCode)Dfinit le code de retour de la rponse

void setHeader(String Nom, String Valeur)Dfinit une paire cl/valeur dans les en-ttes

void setContentType(String type)Dfinit letype MIMEde la rponse HTTP, c'est--dire le type de donnes envoyes au navigateur

void setContentLength(int len)Dfinit la taille de la rponse

PrintWriter getWriter()Retourne un objetPrintWriterpermettant d'envoyer du texte au navigateur client. Il se charge de convertir au format appropri les caractres Unicode utiliss par Java

ServletOutputStream getOutputStream()Dfinit un flot de donnes envoyer au client, par l'intermdiaire d'un objetServletOutputStream, driv de la classejava.io.OutputStream

void sendredirect(String location)Permet de rediriger le client vers l'URLlocation

Le JavaServer Pages ou JSP est une technique :permet aux dveloppeurs de gnrer dynamiquement du code HTML, XML ou tout autre type de page webLes JSP sont compiles par un compilateur JSP pour devenir des servlets Java.

lments de scripts JSP :Commentaire: Cet lment de script est utilis pour faire un commentaire dans le code JSPLe texte dans un commentaire JSP ne sera pas envoy au client ni compil dans la ServletExpression: DclarationUne dclaration permet dinsrer du code dans la classe de la Servlet.Les attributs et les mthodes dclares dans la page JSP sont utilisables dans toute la page JSPLes dclarations sont placs entre les symboles

Directive page Directive include

Tout le contenu du fichier externe est inclus comme sil tait saisi directement dans la page JSP.Pas de sparation de la porte des variablesDirective JSP : pageLa directive page dfinit les attributs spcifiques une page.Des attributs possibles pour la directive page sont : import : Importe un paquetage (package) Java. Cette directive rsulte en une instruction import dans la servlet. // import

contentType : Dfinit le type de contenu de la page gnre. Par exemple, ce peut tre text/html pour du HTML. // contentType

errorPage : Indique la page afficher si une exception se produit pendant le traitement de la requte HTTP. //la page d'erreur

isErrorPage : Si cette valeur est true, la page est une page d'erreur. // pas une page d'erreur

La porte des objets

un objet de porte page n'est accessible que sur une page JSP donne ;un objet de porte requte n'est accessible que durant le cheminement d'une requte dans l'application, et n'existe plusds lors qu'une rponse est renvoye au client ;un objet de porte session est accessible durant l'intgralit de la visite d'un client donn, condition bien sr que letemps d'inactivit dfini par le conteneur ne soit pas dpass durant cette visite ;un objet de porte application est accessible durant toute l'existence de l'application et par tous les clients. Le JavaBean

Un bean : doit tre une classe publique ; doit avoir au moins un constructeur par dfaut, public et sans paramtres. Java l'ajoutera de lui-mme si aucunconstructeur n'est explicit ; peut implmenter l'interface Serializable, il devient ainsi persistant et son tat peut tre sauvegard ; ne doit pas avoir de champs publics ; peut dfinir des proprits (des champs non publics), qui doivent tre accessibles via des mthodes publiques getter et setter, suivant des rgles de nommage.

Les actions standard

tudions les diffrents attributs de cette action. La valeur de l'attribut id est le nom du bean rcuprer, ou le nom que vous souhaitez donner au bean crer. L'attribut class correspond logiquement la classe du bean. Il doit obligatoirement tre spcifi si vous souhaitez crer un bean, mais pas si vous souhaitez simplement rcuprer un bean existant. L'attribut optionnel scope correspond la porte de l'objet. Si un bean du nom spcifi en id existe dj dans ce scope, et qu'il est du type ou de la classe prcis(e), alors il est rcupr, sinon une erreur survient. Si aucun bean de ce nom n'existe dans ce scope, alors un nouveau bean est cr. Enfin, si cet attribut n'est pas renseign, alors le scope par dfaut sera limit la page en cours. L'attribut optionnel type doit indiquer le type de dclaration du bean. Il doit tre une superclasse de la classe du bean, ou une interface implmente par le bean. Cet attribut doit tre spcifi si class ne l'est pas, et vice-versa.

En rsum, cette action permet de stocker un bean (nouveau ou existant) dans une variable, qui sera identifie par la valeur saisiedans l'attribut id.

L'action standard getPropertyLorsque l'on utilise un bean au sein d'une page, il est possible par le biais de cette action d'obtenir la valeur d'une de sesproprits :Code : JSP

Code : JSP - Syntaxe 2

Code : JSP - Syntaxe 4

excutela page indique et inclure le rsultat de la page dans la sortie de la page d'appel, la place du