关闭

JSP_JSP的三个编译指令

197人阅读 评论(0) 收藏 举报
分类:

JSP的编译指令是通知JSP引擎的消息,它不直接生成输出。编译指令都有默认值,因此开发人员无需为每个指令赋值。它的基本语法是:<%@编译指令名   属性名=“属性值” ···········%>

(一)page:该指令是针对当前页面的指令,page指令通常位于JSP页面的顶端,一个JSP页面可以使用多条page指令。page指令的语法格式:

%@page
[language="Java"]
[extends="package.class"]
[import="package.classIpackage. *},…"]
[session=吨rueIfalse"]
[buffer="noneI8kbIsize kb"1
[autoFlush="trueIfalse"]
[isThread8afe="trueIfalse"][info="text"]
[errorPage="relativeURL"]
[contentType=mimeType[;charset=character8et]"I"text/html;char8et=工808859-1"]
[IsErrorPage="trueIfalse"]
%〉


下面依次介绍page 的各个属性。

language: 声明当前 JSP 页面使用的脚本语言的种类,因为页面是 JSP 页面,该
属性的值通常都是Java

extends: 确定 JSP程序编译时所产生的 Java类,需要继承的父类,或者需要实现的接口的全限定类名。

import: 用来导入包,下面几个包是默认自动导入的,不需要显式导入。默认导入的包有:

java.lang.* javax.servlet.*javax.serlet.jsp.* javax.servlet.http*

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

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

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

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

eηorPage: 指定错误处理页面。如果本程序产生了异常或者错误,而该 JSP 页面没有对应的处理代码,则会自动调用该指令所指定的 JSP 页面。使用 JSP 页面时,可以不处理异常,即使是 checked 异常。

isErroePage: 设置本 JSP 页面是否为错误处理程序。如果该页面本身己是错误处理页面,则无须使用 errorPage 属性。

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


  errorPage属性的实质是JSP异常处理机制,JSP脚本不要求强制处理异常,即使该异常是checked异常。如果JSP页面在运行中抛出未处理的异常,系统将自动跳转到errorPage属性指定的页面;一旦errorPage属性设置了指定的JSP页面,则指定的JSP页面的isErrorPage属性设置为true。

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

语法:<% @include file="relativeURLSpec"%>  include指令最好包含的是不需要经常改变的静态内容。如果被嵌入的文件经常需要改变,建议使用<jsp:include>操作指令。


(三)taglib指令

taglib指令允许页面使用用户自定义标签。用户首先要开发自己的标签库(taglib),为标签库编写配置文件(以.tld为后缀的文件),然后在JSP页面中使用该自定义标签。由于使用了标签,增加了代码的重用程度,比如可以把一些需要迭代显示的内容做成一个标签,在每次需要迭代显示时,就使用这个标签。使用标签也使页面易于维护。

在JSP规范中,标签库得到了不断的加强,在最新的JSP 2.0 规范中增加了JSP 标准标签库(JSP Standard Tag Library,JSTL),用户可以直接应用。

在JSP中利用用户自定义标签库或JSTL的语法格式如下。

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

其中,uri用来表示标签库的地址,也就是告诉JSP容器怎么找到标签描述文件和标签库,prefix 表示在JSP页面里引用这个标签的前缀,这些前缀不可以是jsp、jspx、java、javax、sun、servlet和sunw。


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:817937次
    • 积分:12417
    • 等级:
    • 排名:第1312名
    • 原创:342篇
    • 转载:337篇
    • 译文:0篇
    • 评论:39条
    文章分类
    最新评论