JSP - La directive page

le pageLa directive est utilisée pour fournir au conteneur des instructions relatives à la page JSP actuelle. Vous pouvez coder les directives de page n'importe où dans votre page JSP. Par convention, les directives de page sont codées en haut de la page JSP.

Voici la syntaxe de base de la directive de page -

<%@ page attribute = "value" %>

Vous pouvez écrire l'équivalent XML de la syntaxe ci-dessus comme suit -

<jsp:directive.page attribute = "value" />

Les attributs

Le tableau suivant répertorie les attributs associés à la directive de page -

S.No. Attribut et objectif
1

buffer

Spécifie un modèle de mise en mémoire tampon pour le flux de sortie.

2

autoFlush

Contrôle le comportement du tampon de sortie du servlet.

3

contentType

Définit le schéma de codage des caractères.

4

errorPage

Définit l'URL d'un autre JSP qui signale les exceptions d'exécution non vérifiées Java.

5

isErrorPage

Indique si cette page JSP est une URL spécifiée par l'attribut errorPage d'une autre page JSP.

6

extends

Spécifie une superclasse que le servlet généré doit étendre.

sept

import

Spécifie une liste de packages ou de classes à utiliser dans la JSP, comme le fait l'instruction d'importation Java pour les classes Java.

8

info

Définit une chaîne accessible avec le servlet getServletInfo() méthode.

9

isThreadSafe

Définit le modèle de thread pour le servlet généré.

dix

language

Définit le langage de programmation utilisé dans la page JSP.

11

session

Spécifie si la page JSP participe ou non aux sessions HTTP.

12

isELIgnored

Spécifie si l'expression EL dans la page JSP sera ignorée ou non.

13

isScriptingEnabled

Détermine si les éléments de script sont autorisés à être utilisés.

L'attribut buffer

le buffer L'attribut spécifie les caractéristiques de mise en mémoire tampon de l'objet de réponse de sortie du serveur.

Vous pouvez coder une valeur de "none"pour ne spécifier aucune mise en mémoire tampon afin que la sortie de la servlet soit immédiatement dirigée vers l'objet de réponse ou vous pouvez coder une taille de mémoire tampon maximale en kilo-octets, ce qui ordonne au servlet d'écrire dans la mémoire tampon avant d'écrire dans l'objet de réponse.

Pour demander au servlet d'écrire la sortie directement sur l'objet de sortie de réponse, utilisez ce qui suit:

<%@ page buffer = "none" %>

Utilisez ce qui suit pour demander au servlet d'écrire la sortie dans un tampon d'une taille d'au moins 8 kilo-octets -

<%@ page buffer = "8kb" %>

L'attribut autoFlush

le autoFlush L'attribut spécifie si la sortie de la mémoire tampon doit être vidée automatiquement lorsque la mémoire tampon est remplie, ou si une exception doit être déclenchée pour indiquer le dépassement de la mémoire tampon.

Une valeur de true (default) indique le vidage automatique de la mémoire tampon et une valeur false lève une exception.

La directive suivante oblige le servlet à lever une exception lorsque le tampon de sortie du servlet est plein -

<%@ page autoFlush = "false" %>

Cette directive oblige le servlet à vider le tampon de sortie lorsqu'il est plein -

<%@ page autoFlush = "true" %>

Habituellement, le tampon et les attributs autoFlush sont codés sur une seule directive de page comme suit -

<%@ page buffer = "16kb" autoflush = "true" %>

L'attribut contentType

L'attribut contentType définit le codage des caractères pour la page JSP et pour la page de réponse générée. Le type de contenu par défaut esttext/html, qui est le type de contenu standard pour les pages HTML.

Si vous souhaitez écrire du XML à partir de votre JSP, utilisez la directive de page suivante -

<%@ page contentType = "text/xml" %>

L'instruction suivante demande au navigateur de rendre la page générée au format HTML -

<%@ page contentType = "text/html" %>

La directive suivante définit le type de contenu comme un document Microsoft Word -

<%@ page contentType = "application/msword" %>

Vous pouvez également spécifier le codage des caractères de la réponse. Par exemple, si vous souhaitez spécifier que la page résultante renvoyée au navigateur utiliseISO Latin 1, vous pouvez utiliser la directive de page suivante -

<%@ page contentType = "text/html:charset=ISO-8859-1" %>

L'attribut errorPage

le errorPageL'attribut indique au moteur JSP la page à afficher en cas d'erreur lors de l'exécution de la page en cours. La valeur de l'attribut errorPage est une URL relative.

La directive suivante affiche MyErrorPage.jsp lorsque toutes les exceptions non interceptées sont levées -

<%@ page errorPage = "MyErrorPage.jsp" %>

L'attribut isErrorPage

le isErrorPage L'attribut indique que la JSP actuelle peut être utilisée comme page d'erreur pour une autre JSP.

La valeur de isErrorPage est true ou false. La valeur par défaut de l'attribut isErrorPage est false.

Par exemple, le handleError.jsp définit l'option isErrorPage sur true car elle est censée gérer les erreurs -

<%@ page isErrorPage = "true" %>

L'attribut s'étend

le extends L'attribut spécifie une superclasse que le servlet généré doit étendre.

Par exemple, la directive suivante demande au traducteur JSP de générer le servlet de telle sorte que le servlet étend somePackage.SomeClass -

<%@ page extends = "somePackage.SomeClass" %>

L'attribut d'importation

le importL'attribut remplit la même fonction et se comporte comme l'instruction d'importation Java. La valeur de l'option d'importation est le nom du package que vous souhaitez importer.

Importer java.sql.*, utilisez la directive de page suivante -

<%@ page import = "java.sql.*" %>

Pour importer plusieurs packages, vous pouvez les spécifier séparés par une virgule comme suit -

<%@ page import = "java.sql.*,java.util.*"  %>

Par défaut, un conteneur importe automatiquement java.lang.*, javax.servlet.*, javax.servlet.jsp.*, et javax.servlet.http.*.

L'attribut info

le infoL'attribut vous permet de fournir une description de la JSP. Ce qui suit est un exemple de codage -

<%@ page info = "This JSP Page Written By ZARA"  %>

L'attribut isThreadSafe

le isThreadSafeL'option marque une page comme étant thread-safe. Par défaut, toutes les JSP sont considérées comme thread-safe. Si vous définissez l'option isThreadSafe sur false, le moteur JSP s'assure qu'un seul thread à la fois exécute votre JSP.

La directive de page suivante définit le isThreadSafe option à false -

<%@ page isThreadSafe = "false"  %>

L'attribut de langue

le language L'attribut indique le langage de programmation utilisé dans le script de la page JSP.

Par exemple, comme vous utilisez généralement Java comme langage de script, votre option de langage ressemble à ceci:

<%@ page language = "java" %>

L'attribut de session

le sessionL'attribut indique si la page JSP utilise ou non des sessions HTTP. La valeur true signifie que la page JSP a accès à unsession object et une valeur de false signifie que la page JSP ne peut pas accéder à l'objet de session intégré.

La directive suivante permet à la page JSP d'utiliser l'une des méthodes de session d'objet intégrées telles que session.getCreationTime() ou session.getLastAccessTime() -

<%@ page session = "true" %>

L'attribut isELIgnored

L'attribut isELIgnored vous donne la possibilité de désactiver l'évaluation des expressions du langage d'expression (EL) qui a été introduite dans JSP 2.0.

La valeur par défaut de l'attribut est true, ce qui signifie que les expressions, ${...}, sont évalués conformément à la spécification JSP. Si l'attribut est défini sur false, les expressions ne sont pas évaluées mais plutôt traitées comme du texte statique.

La directive suivante définit une expression à ne pas évaluer -

<%@ page isELIgnored = "false" %>

L'attribut isScriptingEnabled

le isScriptingEnabled L'attribut détermine si les éléments de script sont autorisés à être utilisés.

le default value (true)active les scriptlets, les expressions et les déclarations. Si la valeur de l'attribut est définie sur false, une erreur de traduction sera générée si le JSP utilise des scriptlets, des expressions (non EL) ou des déclarations.

La valeur de l'attribut peut être définie sur false si vous souhaitez restreindre l'utilisation de scriptlets, d'expressions (non EL) ou de déclarations -

<%@ page isScriptingEnabled = "false" %>