/ 知识库     / 试卷库

JSP指令

JSP 指令(directive)用来告诉 Web 服务器如何处理 JSP 页面的请求和响应。

服务器会根据 JSP 指令来编译 JSP,生成 Java 文件。JSP 指令不产生任何可见输出,在生成的 Java 文件中,不存在 JSP 指令。

JSP 指令以<%@开始,以%>结束,语法如下:

<%@ directive attribute = "value" [attribute2 = "value2" ...]%>

注意:[ ]中的内容是可选的,@ 符号和指令名称之间,以及最后一个属性和结束%>之间的空格是可选的。

page 指令

JSP page 指令用来定义当前页面的相关属性。可以在 JSP 页面的任意位置编写,通常放在 JSP 页面的顶部。

  • buffer:指定输出流是否有缓冲区 <%@ page buffer="16kb" %> 

  • autoFlush :指定缓冲区是否自动清除 <%@ page autoFlush="true" %> 

  • contentType:指定 MIME 类型和字符编码 <%@ page contentType="text/html;charset=UTF-8" %>

  • errorpage :指定当前 JSP 页面发生异常时,需要重定向的错误页面 <%@ page errorpage="errorpage.jsp" %>

  • 注意:myerrorpage.jsp 的 isErrorpage 值必须为 true

  • isErrorpage:指定当前页面为错误页面 <%@ page isErrorpage="true" %>  

  • import:类似于 Java 的 import 关键字 <%@ page import = " java.util.Date" %>

include 指令

include 指令用于在 JSP 页面引入其它内容,可以是 JSP 文件、html 文件和文本文件等,相当于把文件的内容复制到 JSP 页面。引入的文件和 JSP 页面同时编译运行。

include 指令语法:

<%@ include file="URL" %>

其中,file 指定需要引入文件的相对路径。

使用 include 指令有以下优点:

  • 增加代码的可重用性

  • 使 JSP 页面的代码结构清晰易懂

  • 维护简单

可以在页面的任何位置编写 include 指令。

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<body>
    <%@ include file="head.jsp" %>
    <p>使用include</p>
</body>
</html>

taglib指令

taglib指令用来指定页面中使用的标签库以及其自定义标签的前缀。

语法格式:

<%@ taglib uri=" tagLibraryURI" prefix=" tagPrefix" %>

uri(Uniform Resource Identifier,统一资源标识符):用于指定标记库的存放位置,并告诉JSP引擎在编译JSP程序时如何处理指定标签库中的标签,无默认值。

uri属性可以是在TLD (标记库描述符)文件或web.xml文件中定义的标记库的符号名,也可以是TLD文件或JAR文件的相对路径。 

prefix属性:用于指定标记库中所有动作元素名中使用的前缀,无默认值。