JSP/Servlet 學習筆記

來源:互聯網
上載者:User

I. JSP標籤

1. 注釋: <%-- 注釋內容 --%>
2. 聲明: <%!  申明部分 %>
3. 運算式: <%=  運算式 %>
4. 指令碼: <% 指令碼 %>

II. JSP的3個編譯指令:page, include, tablib

格式: <%@  編譯指令名 屬性名稱="屬性值" %>

1. page
<%@ page
    [language="Java"]
    [extends="package.class"]
    [import= "package.class I package. *},…"]
    [session=true I false"]
    [buffer="none I 8kb I size kb" 1
    [autoFlush="true I false"]
    [isThread8afe="true I false"]
    [info="text"]
    [ErrorPage="relativeURL"]
    [contentType="mimeType [;charset=characterSet]" I "text/html;charSet= ISO808859-1"]
    [isErrorPage=" true I false"]
%>

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

2. include
格式:<%@ include file="relativeURLSpec" %>
如果被內嵌檔案經常需要改變,建議使用<jsp:include>操作指令,因為它是動態include 語句。

3. tablib
略。

III. JSP 的7 個動作指令

1. jsp:forward: 執行頁面轉向,將請求的處理轉寄到下一個頁面。

對於JSP 1. 0 ,使用如下文法:
<jsp: forward page=" {relativeURL I <%=expression%>}"/>

對於JSP 1. 1 以上,可使用如下文法:
<jsp:forward page=" {relativeURL I <%=expression %>}">
        {<jsp:param.../>}
</jsp:forward>

第二種文法用於在轉寄時增加額外的請求參數。增加的請求參數的值可以通過HttpServletRequest 類的getParameter方法擷取。

2. jsp:param: 用於傳遞參數,必須與其他支援參數的標籤一起使用。

<jsp:param name="parameterName" value="patameterValue" />

3. jsp:include: 用於動態引入一個JSP 頁面。

<jsp: include page=" {relativeURL I <%=expression%>}" flush= true" />
或者
<jsp:include page="{relativeURL I <%=expression%>}" flush="true" >
        <jsp:param name="parameterName" value="patameterValue" />
</jsp:include>

4. jsp:useBean: 使用JavaBean 。

<jsp:useBean id="name" class="classname" scope="page I request I session I application" />

5. jsp:setProperty: 修改JavaBean 執行個體的屬性值。
6. jsp:getProperty: 擷取JavaBean 執行個體的屬性值。
樣本:
<jsp:useBean id="pI" class="lee.Person" scope="page"/>
<jsp:setProperty name="pI" property="name" value="wawa"/>
<jsp:getProperty name="pI" property="age"/>

7. jsp:plugin: 用於下載JavaBean 或Applet 到用戶端執行。
<jsp:plugin type="bean | applet"
    code="classFileName"
    codebase="classFileDiretoryName"
    [name=" instanceName"]
    [archive="URLtoArchive"]
    [align= "bottom 1 top I middle 1 left 1 right"]
    [heigh="displayPixels"]
    [width="displayPixels"]
    [hspace="leftRightPixels"]
    [vspace="topBottomPiexels"]
    [jreversion=叮REVersionNumber11.2"]
    [nspluginurl="URLToPlugin"]
    [iepluginurl="URLToPlugin"]>
    [<jsp:parames>
        [jsp:param name="parameterName" value="parameterValue"I>]
    </jsp:params>]
    [<jsp:fallback>text message for user that can no see the plugin
    </jsp:fallback> ]
</jsp:plugin>

IV. JSP 的9 個內建對象

注意:這些對象的對象名都是小寫。

1. application
javax.servlet.ServletContext 的執行個體
該執行個體代表JSP 所屬的Web 應用程式本身,可用於JSP 頁面,或者Servlet 之間交換資訊。常用的方法有getAttribute(String attNarne) , setAttribute(String attNarne , String attValue) 和getInitParameter(String paramNarne)等。

2. config
javax.servlet. ServletConfig 的執行個體
該執行個體代表該JSP 的配置資訊。常用的方法有getInitPararneter(String paramNarne) 及getInitPararneternarnes() 等方法。事實上,JSP 頁面通常無須配置,也就不存在配置資訊。因此,該對象更多地在Servlet 中有效。

3. exception
java.lang.Throwable 的執行個體
該執行個體代表其他頁面中的異常和錯誤。只有當頁面是錯誤處理頁面,即編譯指令page 的isErrorPage 屬性為true 時,該對象才可以使用。常用的方法有getMessage()和printStackTrace()等。

4. out
javax.servlet.jsp.JspWriter 的執行個體
該執行個體代表JSP 頁面的輸出資料流,用於輸出內容,形成HTML 頁面。

5. page
代表該頁面本身,通常沒有太大用處。也就是Servlet 中的this ,其類型就是產生的Servlet 。

6. pageContext
javax.servlet.jsp.PageContext 的執行個體
該對象代表該JSP 頁面上下文,使用該對象可以訪問頁面中的共用資料。常用的方法有getServletContext()和getServletConfig()等。

7. request
javax.servlet. http:HttpServletRequest 的執行個體
該對象封裝了一次請求,用戶端的請求參數都被封裝在該對象裡。這是一個常用的對象,擷取用戶端請求參數必須使用該對象。常用的方法有getPararneter(String paramNarne), getPararneterValues(String paramName), setAttribute(String atttibuteName,Object attributeValue),
getAttribute(String attributeName)和setCharacterEncoding(String env)等。

8. response
javax.servlet.http.HttpServletResponse 的執行個體
代表格服務器對用戶端的響應。通常,也很少使用該對象直接響應,輸出響應使用out 對象,而response 對象常用於重新導向。常用的方法有sendRedirect(java.lang.String location)等。

9. session
javax.servlet.http.HttpSession 的執行個體
該對象代表一次會話。從用戶端瀏覽器與網站建立串連起,開始會話,直到關閉瀏覽器時結束會話。常用的方法有:getAttribute(String attName), setAttribute(String attName, String attValue)等。

V. 基於Servlet/JSP/Bean的MVC

M: Model,即模型,對應JavaBean 。
V: View ,即視圖,對應JSP 頁面。
C: Controller,即控制器,對應Servlet。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.