码迷,mamicode.com
首页 > Web开发 > 详细

JSP笔记——3.JSP的三个编译指令

时间:2015-09-03 14:08:54      阅读:231      评论:0      收藏:0      [点我收藏+]

标签:jsp

JSP编译指令是通知JSP引擎的信息,它不直接生成输出。常见的编译指令有如下三个:


page指令

此指令是对整个jsp页面的描述指令。语法格式如下:

《% @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= "808859-1"] 

[isErrorPage=" true|false"] 

%》

一个jsp页面中可以有多个page指令。每个page指令中有若干的属性值。

  • language属性用来说明当前页面的脚本语言种类(也就是括号里面是什么类型的语言)。

  • extends用来描述由这个jsp页面转译成的java类所继承的父类,或者是实现的接口。

  • import是导入的包,当脚本中需要引包的时候使用。

  • session用来说明这个jsp页面是否需要httpsession。

  • buffer指定输出缓冲虚的大小。默认值是8k,也可是设置成其他大小。当使用out在客户端输出的时候需要的缓存。

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

  • info: 设置该JSP程序的信息,也可以看做其说明,可以随便写一些说明性文字,可以通过 Servlet. getServletInfo()方法获取该值。如果在 JSP 页面中,可直接调用 getServletInfo()方法获取该值,因为 JSP 页面的实质就是 Serlet。

  • errorPage指定错误处理页面。如果本程序产生了异常或者错误,而该 JSP 页面没有对应的处理代码,则会自动调用该指令所指定的 JSP 页面。使用 JSP 页面时,可以不处理异常,即使是 checked 异常,yinwei JSP内建了异常机制支持。如果发生异常时,抛出未处理的异常,又没有指定的错误界面,则错误信息会直接在浏览器显示出来。

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

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

  • pageEncoding指定了生成网页的编码字符。


include指令

它可以将外部的jsp文件包含到当前的jsp页面中,同时解析这个外部jsp中的jsp语句(上一节中提到的四种jsp语句)。include 既可以包含静态的文本,也可以包含动态的 JSP 页面。静态的编译指令include,是将被包含的页面加入进来,生成一个完整的页面。所以被包含的jsp可以不是完整的,反正最终用的也不是它,只要能凑成一个完整的就可以。在servlet层面中,include的原理就是,将被包含的页面的java代码融合到当前页面的java代码中。这也就是为什么这种方式叫做静态包含,因为它完全把被包含界面中的代码融入了进来,也包括了其它编译指令。注意防止编译指令的冲突!include静态语句如下:

《%@include file="relativeURLSpec" %》

如果被嵌入的文件经常需要改变,建议使用动作指令(见下节),因为它是动态的 include 语句。《jsp:include page="url"/》 之前做的开发中,index界面的include用的就是这种方式。


taglib指令

这个指令用于指明引入了哪个标签库,前缀是什么,uri是什么。在接下来的章节中会详细介绍。

本文出自 “指尖轻飞” 博客,谢绝转载!

JSP笔记——3.JSP的三个编译指令

标签:jsp

原文地址:http://mengcao.blog.51cto.com/9395052/1691052

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!