JSP三大指令

  1、page指令

    page指令用户定义JSP页面中的全局属性,它的语法格式如下:

   

<%page

    {language="java"}

    {extends="package.class"}

    {import="{package.class|package.*},..."}

    {session="true | false"}

    {buffer="none | 8kb | sizekb"}

    { false"}

    {isThreadSafe="true | false"}

    {info="text"}

    {errorPage="relativeURL"}

    {contentType="mimeType [;charset=characterSet]" | "text/html ; charset=ISO-8859-1"}

    {isErrorPage="true | false"}

    {pageEncoding="charset=characrerSet | ISO-8859-1"}

    %>

    page指令对整个页面有效,包括静态的包含文件,但page指令不能用于被动态包含的文件,例如使用包含的文件。在一个JSP页面中可以使用多个page指令,但page指令中的属性只能出现一次(import属性除外)。

    Example:

    <%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" buffer="5kb" autoFlush="false" errorPage=" error.jsp " %>

    通过Page命令,你可以为整个JSP页面定义上面提到的全局属性,其中除了“import”之外,其他的都只能引用一次,import属性和Java语言中的import非常相似,可以在JSP页面中多次使用它。

    关于<%@ page %>的位置可以不去考虑,放在任何地方都可以很好的工作,但出于良好的编程习惯,建议放在JSP页面的顶部。几乎所有的JSP页面顶部都可以找到指令page。

1.language属性

    定义JSP页面使用的脚本语言,若使用JSP引擎支持Java以外的语言,可指定所使用的语言种类。默认语言为Java

    language=”java”

    指明JSP文件中使用的脚本语言,目前只能使用Java。

2.contentType属性

    contentType属性定义了JSP页面字符编码和页面响应的MIME类型。默认的MIME类型是text/html,默认的字符集是ISO-8859-1。例如:

    <%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" %>

3.import属性

    该属性用于JSP引入Java包中的类,如果你要包含多个包的话,将这些包的名称用逗号隔开放在一个import中,或者使用多个import分别声明。它是唯一可以多次指定的属性。

    在使用Java包中的元素之前一定要先声明该包的import引用。下面一些Java包,是默认包含的,不用再在JSP页面中声明。

    java.lang.*

    javax.servlet.*

    javax.servlet.jsp.*

    javax.servlet.http.*

4.extends属性

    定义此JSP页面产生的Servlet是继承自哪个父类。请特别谨慎使用这一功能,因为,服务器也许已经定义了一个。JSP规范对不完全理解其隐意的情况下使用此属性提出警告。

5.isErrorPage属性

    isErrorPage="true|false"

    默认值为“true”,设置是否显示错误信息。如果为true,可以看到出错信息,如果为false,就看不到了。

6.errorPage属性

    errorPage="relativeURL"

    设置处理异常事件的JSP文件的位置。表示如果发生异常错误,网页会被重新指向一个URL页面。错误页面必须在其page指令元素中指定isErrorPage="true"。

7.session属性

    session="true|false"

    默认值为“true”,定义是否在JSP页面使用HTTP的session。如果值为true,则可以使用session对象;如果值为false,那么JSP页面就不被加入到session中,session内置对象则不能使用,而同时会造成Bean的scope属性值只能是“page”。

8.Buffer属性

    buffer="none|8kb|sizekb"

    为内置对象out指定发送信息到客户端浏览器的信息缓存大小。以kb为单位。默认值是8kb.你也可以自行指定缓存的大小。也可以设置为“none”,那么就没有缓冲区,所有的输出都不经缓存而直接输出。

9.autoFlush属性

    autoFlush="true|false"

    指定是否当缓存填满时自动刷新,输出缓存中的内容。如果为true,则自动刷新。否则,当缓存填满后,可能会出现严重的错误。当你把buffer设置为none时,就不能将autoFlush设置为false。

10.isThreadSafe属性

    isThreadSafe="true|false"

    指定JSP页面是否支持多线程访问。默认值是ture,表示可以同时处理多个客户请求,但是你应该在JSP页面中添加处理多线程的同步控制代码。如果设置为false,JSP页面在一个时刻就只能响应一个请求。

11.info属性

    info="text"

    指定任何一段字符串,该字符串被直接加入到翻译好的页面中。可以通过Servlet.getServletInfo()方法得到。

    2、include指令

    Include指令的功能是在JSP编译时插入包含的文件。包含的过程是静态的。它可以把内容分成更多可管理的元素,如包括普通页面的页眉或页脚的元素。包含的文件可以是JSP、HTML、文本或是Java程序。

    include指令的语法:

    <%@ include file="relativeURL" %>

    其中只有一个file属性,这个属性指定了被包含文件的路径。

    如果路径是以"/"开头的,那么这个路径应该就是相对于JSP应用程序上下文而言的。而如果以目录名或文件名开头则是以JSP文件所在路径为当前路径而言。例如:

    "header.jsp"

    "/templates/onlinestore.html"

    "/beans/calendar.jsp"

    在JSP中,你可以用Include指令将JSP文件,HTML文件,或Text文件包含到一个JSP文件中,这种包含是静态包含,也就是说当使用这种方法包含文件的时候,会将被包含文件的内容插入包含文件中,替换掉<%@ include %>这行语句。如果你包含的是一个JSP文件,那么包含在这个文件中的JSP程序将被执行。

    当你使用Include包含一个文件的时候,一定要注意,在被包含文件中不能含有,,,等HTML元素,否则的话会导致执行错误。因为被包含的文件会整个加入到JSP文件中去,这些标记会与JSP文件中类似的标记相冲突。

    使用包含文件有以下一些优点:

    (1)被包含文件可以在多个文件中被使用,实现了代码共享和重用。

    (2)当被包含文件修改后,包含此文件的JSP文件的执行结果也发生变化,这样就提高修改效率,为维护提供方便。

    Example:

    include.jsp

   

   

   

    The current date and time are

    <%@ include file="date.jsp" %>

   

   

    date.jsp

    <%@ page import ="java.util.*" %>

    <%= (new java.util.Date()).toLocaleString() %>

    上面的例子在执行后,会在客户端的浏览器中显示和下面类似的信息:

    The current date and time are

    Aug 30,1999 2:38:40

    3、taglib指令

    taglib指令中的uri属性用于根据标签的前缀对自定义的标签进行唯一的命名,其值可以是相对路径,就对路径或标签库描述文件。属性prefix制定了标签的前缀。

    taglib指令的语法:

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

    例如

    <%@ taglib uri="http://www.jspcentral.com/tags" prefix="public" %>

   

   

    <% @ taglib %>指令声明此JSP文件使用了自定义的标签,同时引用标签库,也指定了标签的前缀。

    这里自定义的标签有标签和元素之分。因为JSP文件能够转化为XML,所以了解标签和元素之间的联系很重要。标签只不过是一个在意义上被抬高了点的标记,是JSP元素的一部分。JSP元素是JSP语法的一部分,和HTML一样有开始标记和结束标记。元素可以包含其它的文本,标记,元素。使用自定义标签之前必须使用<% @ taglib %>指令,而且可以在一个页面中多次使用,但是同一前缀只能引用一次。

    URI根据标签的前缀对自定义的标签进行唯一的命名prefix="tagPrefix",在自定义标签前的前缀,比如,在中的public,如果不写public,就是不合法的。请不要用jsp, jspx, java, javax, servlet, sun, 和sunw作为前缀。


转:http://www.shangxueba.com/jingyan/1836758.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值