1.Include指令
该指令用于包含一个文本或代码的文件。
JSP语法:<%@ include file="relativeURL"%>
例子:
include.jsp文件内容为:
<html>
<head><title>Include指令测试</title></head>
<body >
random.jsp中的随机显示的数为:
<%@ include file="random.jsp" %>
</body>
</html>
random.jsp文件中内容为:
<%=java.lang.Math.random()*10000%>
在页面中显示为:
random.jsp中的随机显示的数为: 2148.093521070482
描述
Include指令在JSP文件中插入一个包含文本和代码的文件。被包含的文件可以是JSP文件,HTML文件或文本文件。如果被包含的文件是JSP文件,则JSP引擎编译完该JSP文件后,执行的结果将插入到主JSP文件中Include指令所在的位置。如果被包含的文件是HTML文件或文本文件,则JSP引擎不对其进行编译,直接将其内容插入到主JSP文件中Include指令所在的位置。该包含是静态包含,即被包含的文件处理完,而且结果也插入到主JSP文件完毕,主JSP文件将继续执行include指令下面的内容。
注意:
(1)被包含的文件中不能含有<html>,</html>,<body>,或</body>标签。因为被包含的文件的全部内容将被插入到JSP文件中include指令所在的地方,这些标签将会同JSP文件中已有的同样的标签发生冲突。
(2)假如被包含的文件发声变化,主JSP页面将被重新编译。
属性:
file="relativeURL"
file是被包含文件的路径名。 其值是一个URL的一部分,没有协议、端口号或域名. 如:
"error.jsp"
"/templates/onlinestore.html"
"/beans/calendar.jsp"
如果相对URL以"/"开始,这个路径是相对于JSP应用上下文而言的,JSP应用上下文是存储在application对象中的javax.servlet.ServletContext对象。如果相对URL以目录或文件名开始,这个路径是相对于当前JSP文件所在的路径而言的。
2. Page 指令
定义整个JSP页面的全局属性。
JSP语法:
<%@ page
[ language="java"]
[ extends="package.class"]
[ import= "{ package.class | package.* }, ..." ]
[ session="true|false" ]
[ buffer="none|8kb|sizekb" ]
[ autoFlush="true|false" ]
[ isThreadSafe="true|false" ]
[ info="text"]
[ errorPage="relativeURL"]
[ contentType="mimeType [ ;charset=characterSet ]" |
"text/html ; charset=ISO-8859-1" ]
[ isErrorPage="true|false"] %>
例:
<%@ page contentType="text/html;charset=gb2312" %>
<%@ page import="java.sql.*, java.lang.*" %>
<%@ page buffer="8kb" autoFlush="false" %>
<%@ page errorPage="error.jsp" %>
描述:
Page指令的作用范围是整个JSP文件和该JSP文件用include指令或<jsp:include>包含进来的任何静态文件,整个JSP文件和这些静态文件一起叫做一个"平移单元". 注意:Page指令不适用于任何动态的包含文件。你可以在一个"平移单元"使用多个Page指令。但是每一个属性你只能使用一次,除了import(因为import属性和JAVA程序语言的import语句很类似,你能够多次使用它,就象在JAVA语言中你能够多次使用import命令一样)。不论你将Page指令放到JSP文件或被包含的文件的任何一个位置,它的作用范围都是整个"平移单元".然而,一个好的编成风格是常常将它放到文件的顶部.
language="java"
在JSP文件的脚本段、声明和表达式中使用的语言。现只允许用"JAVA"。
extends="package.class"
该属性用于指明JAVA类文件超类全名。使用该属性时要小心,因为,它会限制JSP引擎编译文件的能力。
import= "{ package.class | package.* }, ..."
JSP文件中导入的一个或多个用逗号隔开的包的列表。这些包(和它们的类)可以在JSP文件的脚本段、表达式、声明和标签中使用。你必须将import属性放到调用被到入的类的标签前面。如果你想导入多个包,你可以在import后面用逗号将每个包隔开即可,或你可以在一个JSP文件中使用多个import.
session="true|false"
该属性用于确定JSP页面是否使用HTTP session.假如这个值是true, 则sesssion引用的是当前或新的session. 假如这个值是false,则在JSP文件中,不能使用session对象。 默认值是true.
buffer="none|8kb|sizekb"
设置buffer缓冲区的大小,当out对象将被编译的JSP页面向客户Web浏览器端输出时使用。它的默认值是8kb.假如你指定了buffer缓冲区的大小,这个输出量将不低于你指定的大小。
autoFlush="true|false"
该属性指出:当缓冲区充满时,是否自动刷新。如果值为true(默认值为true),则自动刷新。如果值为false,则当缓冲区溢出时,将会产生错误。而且如果buffer属性的值设为none,autoFlush属性的值不能设为false.
isThreadSafe="true|false"
假设这个值设为true,多个线程能同时访问一个JSP页面。假如这个值为false,对一个JSP页面,JSP引擎一次只能响应一个用户的请求。默认值为true。
info="text"
关于作者、版本和著作权等信息,可以通过javax.sevlet.Servlet.getServletInfo()方法查到该信息的详细情况。
errorPage="relativeURL"
该属性用于设置处理例外事件的JSP文件的路径名。假如这个路径名以"/"开始,则这个路径名是JSP应用文档根目录而言的,而且由Web服务器决定。否则,这个路径是相对于当前JSP文件而言的。
isErrorPage="true|false"
JSP文件是否显示错误页面。 如果这个值为true,你可以使用例外exception对象。如果这个值为false(默认值也为false),在JSP文件中,不能使用exception对象。
contentType="mimeType [ ;charset =characterSet ]" |
"text/html;charset=ISO-8859-1"
JSP文件中使用的MIME type和character encoding(字符编码)是用于响应客户端的请求。你可以使用JSP引擎中有效的任何MIME type或character set(字符集).默认的MIME type是text/html,而且默认的字符集合是ISO-8859-1