您的位置:首页 > Web前端 > JavaScript

JSP基础——JSP的3个编译指令

2017-05-24 22:45 274 查看

1. page指令

page指令通常位于JSP页面的顶端,一个JSP页面可以使用多条page指令。page指令的语法如下:

<%@page
[language="Java"]
[extends="package.class"]
[import="package.class|package.*,..."]
[session="true|false"]
[buffer="none|8KB|size KB"]
[autoFlush="true|false"]
[isThreadSafe="true|false"]
[info="text"]
[errorPage="relativeURL"]
[contentType="mimeType[;charset=characterSet]"|"text/html;charSet=ISO-8859-1"]
[pageEncoding="ISO-8859-1"]
[isErrorPage="true|false"]
%>


language:声明当前JSP页面使用的脚本语言的种类,因为页面是JSP页面,该属性的值通常都是java,该属性的默认值也是java,所以通常无需设置。

extends:指定JSP页面编译所产生的Java类所继承的父类,或所实现的接口。

import:用来导入包默认导入的包有:java.lang.*、javax.servlet.*、javax.servlet.jsp.*、javax.servlet.http.*。

session:设定这个JSP页面是否需要HTTPSession。

buffer:指定输出缓冲区的大小。输出缓冲区的JSP内部对象:out用于缓存JSP页面对客户浏览器的输出,默认值为8KB,可以设置为none,也可以设置为其他的值,单位为KB。

autoFlush:当输出缓冲区即将溢出时,是否需要强制输出缓冲区的内容。设置为true时为正常输出;如果设置为false,则会在buffer溢出时产生一个异常。

info:设置该JSP程序的信息,也可以看作其说明,可以通过Servlet.getServletInfo(_)方法获取该值。如果在JSP页面中,可直接调用getServletInfo()方法获取该值,因为JSP页面的实质就是Servlet。

errorPage:指定错误处理页面。

isErrorPage:设置本JSP页面是否为错误处理程序。如果该页面本身已是错误处理页面,则通常无需指定errorPage属性。

contentType:用于设定生成网页的文件格式和编码字符集,即MIME类型和页面字符集类型,默认的MIME类型是text/html;默认的字符集类型为ISO-8859-1。

pageEncoding:指定生成网页的编码字符集。

2. include指令

使用include指令,可以将一个外部文件嵌入到当前JSP文件中,同时解析这个页面中的JSP语句(如果有的话)。这是个静态的include语句,他会把目标页面的其他编译指令也包含进来,但动态的include则不会。

include编译指令的语法如下:

<%@include file="relativeURL"%>


如果被嵌入的文件经常需要改变,建议使用操作指令,因为它是动态的include语句。

下面的页面是使用静态导入的示例代码

<@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>静态include测试</title>
</head>
<body>
<!-- 使用include编译指定导入页面 -->
<%@include file="scriptlet.jsp"%>
</body>
</html>


以上页面中include语句使用静态导入语法将scriptlet.jsp页面导入本页,该页面的执行效果和scriptlet.jsp的执行效果相同。

需要指出的是:静态包含还会将被包含页面的编译指令也包含进来,如果两个页面的编译指令冲突,那么页面就会出错。

3. taglib指令:

用于定义和访问自定义标签。关于taglib指令,见自定义标签库。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jsp