首页 > 代码库 > JSP(一)jsp元素

JSP(一)jsp元素

(1)指令元素:用于从jsp发送一个信息到容器,比如设置全局变量、文字编码、引入包等

        1、page

           <%@ page language="java" contentType="text/html; charset=utf-8"   pageEncoding="utf-8"%>

            page 指令中的常用属性:

   language:定义要使用的脚本语言,目前只能是“java”, 即language="java"。

    import: 和一般的Java import意义一样,用于引入要使用的类,只是用逗号“,”隔开包或者类列表。默认省略,即不引入其他类或者包。例如,import="java.io.*,java.util.Hashtable"。

    session:指定所在页面是否参与HTTP会话。默认值为true,session="true"。

    buffer:指定到客户输出流的缓冲模式。如果为none,则不缓冲;如果指定数值,那么输出就用不小于这个值的缓冲区进行缓冲。与autoFlash一起使用。默认不小于8KB,根据不同的服务器可设置。例如,buffer="64kb"。

    autoFlash:如果为true缓冲区满时,到客户端输出被刷新;如果为false缓冲区满时,出现运行异常,表示缓冲区溢出。默认为true,例如autoFlash="true"。

    info:关于JSP页面的信息,定义一个字符串,可以使用servlet.getServletInfo()获得。 默认省略。例如,info="测试页面"。 

    isErrorPage:表明当前页是否为其他页的errorPage目标。如果被设置为true,则可以使用exception对象。相反,如果被设置为false,则不可以使用exception对象。默认为false,例如,isErrorPage="true"。

    errorPage:定义此页面出现异常时调用的页面。默认忽略,例如errorPage="error.jsp"。

    isThreadSafe:用来设置JSP文件是否能多线程使用。如果设置为true,那么一个JSP能够同时处理多个用户的请求;相反,如果设置为false,一个JSP只能一次处理一个请求。例如,isThreadSafe="true"。

    contentType: 定义JSP字符编码和页面响应的MIME类型。TYPE=MIME TYPE;charset=CHARSET。默认为TYPE=text/html,CHARSET=iso8859-1。例如contentType="text/html;charset=gb2312"。

    pageEncoding:JSP页面的字符编码 ,默认值为pageEncoding="iso-8859-1",例如pageEncoding="gb2312"。

    isELIgnored:指定EL(表达式语言)是否被忽略。如果为true,则容器忽略"${}"表达式的计算。默认值由web.xml描述文件的版本确定,servlet2.3以前的版本将忽略。例如isELIgnored="true"。

2、include 

1.两种用法

<%@ include file=” ”%>

<jsp:include page=” ” flush=”true”/>  (动作元素)

 

2.用法区别

(1)执行时间上区别

<%@ include file=”relativeURI”%>                   是在翻译阶段执行

<jsp:include page=”relativeURI” flush=”true” />  在请求处理阶段执行.

 

(2)引入内容的不同

 

<%@ include file=” ”%>

jsp的include指令元素读入指定页面的内容。并把这些内容和本来的页面融合到一起。(这个过程是在翻译阶段:也就是jsp被转化成servlet的阶段进行的。

<jsp:include page=”relativeURI” flush=”true” />引入执行页面或servlet所天生的应答文本.

3、tablib 自定义标签

(2)脚本元素

     JSP声明


声明(declaration)用来在JSP页面中声明变量和定义方法。声明是以<%!开头,以%>结束的标签,其中可以包含任意数量的合法的Java声明语句。下面是JSP声明的一个例子:

<%! int count = 0; %>

上面代码声明了一个名为count的变量并将其初始化为0。声明的变量仅在页面第一次载入时由容器初始化一次,初始化后在后面的请求中一直保持该值。

下面的代码在一个标签中声明了一个变量和一个方法:

<%!

String color[] = {"red", "green", "blue"};

String getColor(int i){

return color[i];

}

%>

也可以将上面的两个Java声明语句写在两个JSP声明标签中,如:

<%! String color[] = {"red", "green", "blue"}; %>

<%!

String getColor(int i){

return color[i];

}

%>


   JSP小脚本


小脚本(scriptles)是嵌入在JSP页面中的Java代码段。小脚本是以<%开头,以%>结束的标签。例如<% count++; %>

小脚本在每次访问页面时都被执行,因此count变量在每次请求时都增1.由于小脚本可以包含任何Java代码,所以它通常用来在JSP页面嵌入计算逻辑。同时还可以使用小脚本打印HTML模板文本。


   JSP表达式


表达式(expression)是以<%=开头,以%>结束的标签,它作为Java语言表达式的占位符。如<%= count%>

包含一个符合Java语法的表达式。表达式的元素在运行后被自动转化为字符串,然后插入到这个表达式的JSP文件的位置显示。因为这个表达式的值已经转化为字符串,所以能在一行文本中插入这个表达式。表达式是一个简化的了的out.println语句。

在页面每次被访问时都要计算表达式,然后将其值嵌入到HTML的输出中。

与变量声明不同,表达式不能以分号结束,因此下面的代码是非法的:

<%= count; %>

使用表达式可以向输出流输出任何对象或任何基本数据类型的值,也可以打印任何算术表达式、布尔表达式或方法调用返回的值。

在JSP表达式的百分号和等号之间不能有空格。

(3)动作元素

       <jsp:forword page="realurl.jsp"  />

(4)jsp注释

       <%--    这是注释   --%>

       <!--    这是注释   -->

JSP(一)jsp元素