JSP 2.0 读书笔记一

来源:互联网 发布:淘宝算命准的店铺 编辑:程序博客网 时间:2024/06/05 14:26

一、JSP网页主要分为elements 和 Template Data两部分

Template Data: JSP Container不处理部分,如HTML

Elements: 必须由JSP Container处理部分,大小写必须一致

有四种类型,Directive、 Scripting、 Action、 EL

二、批注

客户端可以看到的批注:<!-- xxxxxxxxx -->

开发程序员专用的批注:<%--  xxxxxxxx --%>或者 <%  /** xxxxxxxx **/ %>


三、Quoting 和 Escape规则

<% &lt;%

 ‘ \'

\"

\ \\ 

%> %\>


四、Directive

<%@ xxxxxxx %>

page指令:

<%@ page xxxxxxx%>

有11个属性(language, extends, import, session, buffer, autoFlaush, isThreadSafe, info, errorPage, isErrorPage, contentType,pageEncoding, isELIgnored)

<%@ page import = "java.util.Date" %> 导入java.util套件,那么这个套件中有哪些方法?

include指令:JSP编译时插入JSP网页、HTML网页、文本文件、Java程序(避免使用<html> <body>标签)

<%@ include file = "relativeURLspec" %>

<jsp:directive.include file = 'relativeURLspec" />

taglib指令:

<%@ tablib uri = "tagLibraryURI" prefix = "tabPrefix"  %>

<jsp:directive.tablib uri = "tagLibraryURI" prefix = "tabPrefix"   />


五、scripting elements

        声明 <%! 这是声明   %>仅本页有效,此声明为全局变量,如需局部变量,请在 <%    xxxx %>中声明

            <%! int i = 0 ; %>  

            <%! int a, b, c; %>    <%! Circle b = new Circle(2.0); %>

            <%! public String f(int i) { if ( i < 3 ) return (" i 小于 3");}  %>

        scriptlets    <%     这是scriptlets  %>

             只要合乎Java本身的语法即可,声明变量或方法,显示出表达式,使用隐含的对象和使用<jsp:useBean>声明过的对象,编写JSP语句

       表达式        <%=   这是表达式     %>

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

              不能使用分号做结束符


六、Action Elements

    有20项Action,分为5类

    1:存取JavaBean

         <jsp:useBean> <jsp:setProperty> <jsp:getProperty>

    2:JSP1.2原有的action元素

         <jsp:include>

             <jsp:include page = "{urlSpec | <%= expression %>}" flush = "true | false" />

             page:代表一个相对路径的文件

             flush:若为true,缓冲区满时,将会被清空, 默认值为false

         <jsp:forward> 

            将客户端所发出来的请求,从一个JSP网页转交给另一个JSP网页。

            <jsp:forward page={"relativeURL" | "<%= expression %>} />

           <jsp:forward page={"relativeURL" | "<%= expression %>} >

                <jsp:param name="PN" value="{PV | <%= expression %>}" /> *

          </jsp:forward>


        <jsp:param>

            用来传递key/value信息,可以与 include , forward, plugin 搭配使用,新增参数比request对象所含的对象优先级高

         <jsp:plugin>

            用于在浏览器中播放或显示一个对象(通常为Applet 或 Bean)  详细参数:P65

        <jsp:params>

           传参数给<jsp:plugin>

        <jsp:fallback>

          当<jsp:plugin>不能启动Applet或Bean时,浏览器显示的错误信息

    3:JSP Document

       <jsp:root> <jsp:declaration> <jsp:scriptlet> <jsp:expression> <jsp:text> <jsp:output>

    4:产生动态XML元素的标签

       <jsp:attribute> <jsp:body> <jsp:element>

<jsp:element name = "first name" >

           <jsp:attribute name="name">Mike</jsp:attribute>

           <jsp:body>Hello</jsp:body>

         </jsp:element>

        执行结果

         <firstname name="Mike>Hello</firstname>

    5:Tag file中用到的元素

      <jsp:invoke> <jsp:doBody>


七、错误处理

   JPS网页->Servlet类      Translation Time Processing ErrorsHTTP Status 500错误,JSP程序问题或者配置问题

   Servlet类处理每一请求时 Client Request Time Processing Errors 利用Exception机制进行

       <%@ page errorPage="xxx.jsp" %>

      <%@ page isErrorPage="true" %>

原创粉丝点击