page指令用于定义jsp页面中的全局属性。
page指令定义了许多影响页面效果的重要属性。一个jsp页面可以包含多个page指令,在编译过程中,所有的page指令都被抽出来同时应用到一个页面中。除了import外,其它的page指令定义的属性只能出现一次。
1. language属性
例: <%@page language="java" %>
该属性用来提示JSP页面所使用的脚本语言。其默认语言是“Java”。目前没有必要关注这个属性,因为默认的“Java”是当前唯一可用的脚步语言。、
2.import属性
例: <%@page import="java.util.*" %>
该属性和一般java程序中的import意义相同,用于导入包。如果需要导入多个包或类文件,则需要用“,”隔开或类列表。
导入多个包的两种写法:
1. <%@page import="java.util.*, java.sql.*" %>
2.<%@page import="java.sql.*" %>
<%@page import="java.util.*" %>
3.contentType属性
例: < %@page contentType= "text/html;charset=gb2312" %>
该属性用于指定JSP页面中的字符编码和响应MIME的类型,默认为text/html。这和Scriptlets的效果相同:<%response.setContentType("text/html;charset=gb2312"); %>
4.inThreadSafe属性
例: <%@page isThreadSafe="true" %>
用于设定JSP文件是否支持多线程。默认值true表明Servlet按照标准方式处理,一个JSP能够同时处理多个用户的请求。如果被设置成false,则一个JSP一次只能处理一个请求。
5.session属性
例:< %@page session="true" %>
设置此页面是否参加HTTP会话。默认值true,表明预定义变量session(类型为HttpSession)应该绑定到已有的会话,如果不存在已有的会话,则新建一个并绑定session变量。如果取值false,表明不会用到会话,试图访问变量session是将导致JSP转换成Servlet是出错。
6.buffer属性
例:<%@page buffer="64kb" %>
该属性指定客户端输出流的缓存区大小,如果是none则表示不缓冲。如果指定数值,那么输出用不小于这个值的缓冲去进行缓冲.其默认值与服务器有关,但至少应该是8kb。
7.autoFlush属性
例: <%@page auroFlush="true" %>
默认值true,表明如果缓存已满,则将到客户端的输出刷新。autoFlush很少取值false,false值表示如果缓存已满则抛出异常。如果buffer="none",autoFlush不能取false值。
8.extends属性
例: <%@page extends="package.class" %>
该属性指出将要生成的Servlet使用的超类。使用该属性应当十分小心,因为服务器可能已经在用自定义的超类。
9.info属性
例: <%@page info="这是一个测试页面" %>
该属性定义了一个可以通过servlet.getServletInfo()方法获得的信息字符串,即通过调用servlet.getServletInfo()方法可以得到info支付串的具体信息。
10.errorPage属性
例: <%@page errorPage="error.jsp" %>
该属性指定一个出错处理的JSP页面,所有未被当前页面捕获的异常均由该页面处理。
11.isErrorPage属性
例: <%@page isErrorPage="false" %>
该属性表示当前页是否为其它页的errorPage目标。默认为false,此时页面不可以使用exception对象,如果设在为true,则可以使用exception对象。
12.pageEncoding属性
例: <%@page pageEncoding="gb2312" %>
该属性用于指定JSP页面的字符编码。默认为ISO-8859-1。
这些页面指令可以单独使用,也可以同时使用。