JSP page 指令用来定义当前页面的相关属性。page 指令可以在 JSP 页面的任意位置编写,通常放在 JSP 页面的顶部。
page 指令的语法如下:
下表是与 page 指令相关的属性。
属 性 | 取 值 | 说 明 | 举 例 |
---|---|---|---|
buffer | none、缓冲区大小(默认值为 8kb) | 指定输出流是否有缓冲区 | <%@ page buffer="16kb" %> |
autoFlush | true(默认值)、false | 指定缓冲区是否自动清除 | <%@ page autoFlush="true" %> |
contentType | text/html; charset = ISO-8859-1、 text/xml;charset = UTF-8 等 |
指定 MIME 类型和字符编码 | <%@ page contentType="text/html;charset=UTF-8" %> |
errorpage | 页面路径 | 指定当前 JSP 页面发生异常时,需要重定向的错误页面 | <%@ page errorpage="myerrorpage.jsp" %> 注意:myerrorpage.jsp 的 isErrorpage 值必须为 true |
isErrorpage | true、false(默认值) | 指定当前页面为错误页面 | <%@ page isErrorpage="true" %> |
extends | 包名.类名 | 指定当前页面继承的父类,一般很少使用 | <%@ page extends="mypackage.SampleClass"%> |
import | 类名、接口名、包名 | 导入类、接口、包,类似于 Java 的 import 关键字 | <%@ page import = " java.util.Date" %> <%@ page import="java.io.*, java.lang.*"%> |
info | 页面的描述信息 | 定义 JSP 页面的描述信息,可以使用 getServletInfo() 方法获取 | <%@ page info="这里是城东书院的页面信息"%> |
isThreadSafe | true(默认值)、false | 是否允许多线程使用 | <%@ page isThreadSafe="false" %> |
language | 脚本语言 | 指定页面中使用的脚本语言 | <%@ page language= "java" %> |
session | true(默认值)、false | 指定页面是否使用 session | <%@ page session="false" %> |
isELIgnored | true(默认值)、false | 指定页面是否忽略 JSP 中的 EL | <%@ page isELIgnored="false" %> |
以上属性除了 import 可以声明多个外,其它属性都只能出现一次。
下面通过 page 指令的 import 属性导入 java.util.Date 类,显示欢迎信息和用户登录的日期时间。login.jsp 代码如下:
<%@ page import="java.util.Date" language="java"
contentType="text/html;charset=utf-8"%>
<html>
<body>
您好,欢迎登录城东书院!
<br /> 您登录的时间是<%=new Date()%>
</body>
</html>
运行结果如下:
下面通过 page 指令的 errorpage 和 isErrorPage 属性定义以及重定向到错误页面。index.jsp 代码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<body>
<%@page errorPage="errorpage.jsp"%>
<%=100/0 %>
</body>
</html>
errorpage.jsp 代码如下:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<body>
<%@page isErrorPage="true"%>
抱歉,发生了异常!
<br /> 异常为<%= exception%>
</body>
</html>
注意:exception 只能在错误页面使用。
访问 index.jsp 页面,结果如下: