js
指令元素(Directives Elements)
指令主要用来提供整个JSP网页相关的信息,并且用来设定JSP页面的相关属性。
一、page指令
功能:设定整个JSP网页的属性和相关功能。
语法:<%@ page attribute1="value1" attribute2="value2" %>
标签元素:<?XML:NAMESPACE PREFIX = JSP />&NBSP;ATTRIBUTE1="VALUE1"&NBSP;ATTRIBUTE2="VALUE2"&NBSP;>
page指令元素的属性
language="language" 指定JSP Container要用什么语言来编译JSP网页。目前只可以使用Java语言,不过不排除增加其它语言。默认值为Java。
extends="className" 定义此JSP页面产生的Servlet是继承自哪个父类。必须为实现HttpJspPage接口的类。JSP规范对不完全理解其隐意的情况下使用此属性提出警告。
import="importList" 定义此JSP页面可以使用哪些Java API。用逗号分隔列出一个或多个全质类名。此列表用于在生成的java servlet中创建相应的导入语句。以下包是自动包含的,不必被指出:java.lang.*;java.servlet.*;java.servlet.jsp.*;java.servlet.htt.*
session="true|false" 指明JSP页面是否需要一个HTTP会话,如果为true,那么产生的servlet将包含创建一个HTTP会话(或访问一个HTTP会话)的代码,缺省为true。
buffer="none|size in kb" 指定输出流缓存的大小。有效值是nkb或没有。缺省为8kb。
authflush="true|false: 决定输出流的缓冲区是否要自动清除。当值为true时缓存满时将被自动刷新,当值为false时,缓冲区满会抛出溢出异常。缺省值为true。
isThreadSafe="true" 此JSP页面能处理来自多个线程的同步请求,此值为true,否则为false,生成的servlet表明它实现了SingleThreadMode接口。SingleThreadMode已经声明不赞成使用(deprecate)
info="text" 表示此JSP页面的相关信息,由getServletInfo()方法返回的。
isErrorPage="true|false" 如果此页面被用作处理异常错误的页面,则为true。在这种情况下,页面可被指定为另一页面page指令元素中errorPage属性的取值。指定此属性为true将使exception隐含变量对此页面可用。缺省值为false。
errorPage="error_url" 表示如果发生异常错误,网页会被重新指向一个URL页面。错误页面必须在其page指令元素中指定isErrorPage="true"
contentType="ctinfo" 表示将在生成servlet中使用的MIME类型和可选字符解码。
pageEncoding="ctinfo" 表示JSP页面的编码方式。
isELIgnored="true|false" 表示是否在此JSP网页中执行或忽略EL表达式。如果为true时JSP Container将忽略EL表达式。
二、include指令
功能:在JSP编译时插入包含一个文件。包含的过程是静态的,包含的文件可以是JSP、HTML、文本或是Java程序。
语法:<%@ include file="relativeURLspec" %>
标签元素:&NBSP;FILE="RELATIVEURLSPEC"&NBSP;>
注意:include指令元素和行为元素主要有两个方面的不同点。
1.include指令是静态包含,执行时间是在编译阶段执行,引入的内容为静态文要,在编译成servlet时就和包含者融合到一起。所以file不能是一个变量,也不能在file后接任何参数。
2.include行为是动态包含,执行时间是在请求阶段执行,引入的内容在执行页面时被请求时动态生成再包含到页面中。
三、taglib指令
功能:使用标签库定义新的自定义标签,在JSP页面中启用定制行为。
语法:<%@ taglib uri="tabLibraryURI" prefix"tagPrefix" %>
标签元素:&NBSP;URI="TABLIBRARYURI"&NBSP;PREFIX"TAGPREFIX"&NBSP;>
page指令元素的属性
uri="tagLibraryURI" 标签库描述器的URI,主要是说是tagLibrary的存放位置。
prefix="tagPrefix" 用于标识在页面后面部分使用定制标签的唯一前缀。