給javabeans的禮物一篇:JSP基本文法
來源:互聯網
上載者:User
js|文法 JSP基本文法
講完安裝問題後,現在進入來討論JSP文法。一個投機取巧的辦法是下載文法卡片。如果你不熟悉Java編程,也許你想看一下Sun的指南 。然而網頁建立者並不需要進行太多的Java開發。除了一些方法調用,在你的JSP網頁裡應儘可能少用Java代碼。
記住以上提示,我們首先來看一看JSP指令和指令碼元素,之後我們會解釋JavaBeans和隱含對象。共有五種JSP指令和指令碼元素。在JSP 1.0版中,大部分JSP被一個以“<%” 開頭和以“%>”結尾的的標記括在其中。在更新的JSP 1.1規範出台後,就有了與XML相容的版本。
JSP指令和指令碼元素
Directives <%@ directive %>
Declarations <%! declaration %>
Expressions <%= expression %>
Code Fragment/Scriptlet <% code fragment %>
Comments <%-- comment --%>
指令
JSP指令是為JSP引擎而設計的。他們並不直接產生任何可見輸出,而只是告訴引擎如何處理其餘JSP頁面。這些指令始終被括在 “<%@ ?%>”標記中。兩個最重要的指令是“pagePage”和“Include”。“Taglib”指令不在討論之列,但是在用JSP1.1建立自訂標籤可以使用它。
幾乎在所有JSP頁面頂部都會看到“Page”指令。儘管不是必須的,但它可以讓你指定:
到何處尋找起支援作用的Java類別:
<%@ page import="java.util.Date" %>,
出現Java運行問題時,將網上衝浪者引向何處:
<%@ page errorPage="errorPage.jsp" %>,
還有你是否需要系統管理使用者的會話級資訊,這些資訊可能來自多個網頁(在下面的JavaBeans一節將對此做進一步講)述:
<%@ page session="true" %>.
“Include”指令可以把你的內容分成更多可管理的元素,比如包括一個普通頁首或頁尾的元素。包含的網頁可以是一個固定的HTML 頁面或更多的JSP內容:
<%@ include file="filename.jsp" %>
聲明
JSP聲明用來讓你定義頁面級變數,以儲存資訊或定義JSP頁面的其餘部分可能需要的支援方法。如果你發現代碼太多,通常最好把它們寫成一個獨立的Java類別。聲明一般都在“<%! ?%>”標記中。一定要以分號(;)結束變數聲明,因為任何內容都必須是有效Java語句:
<%! int i=0; %>。
運算式
有了JSP運算式,運算式評估結果會被轉換成一個字串,並且被直接包括在輸出頁面之內。JSP 運算式包含在“<%= ?%>” 標記中,沒有分號,除非在加引號的字串部分使用分號。
<%= i %>
<%= "Hello" %> .
程式碼片段/指令碼片段
程式碼片段/指令碼片段(Scriptlets) JSP程式碼片段或指令碼片段是嵌在“<% ?%>”標記中的。這種Java代碼在Web伺服器響應請求時就會運行。在指令碼片段周圍可能是原始的HTML或XML語句,在這些地方,程式碼片段可以使你建立條件執行代碼,或要用到另外一段代碼的代碼。例如,以下的程式碼群組合使用運算式和程式碼片段,顯示H1、H2、H3和H4標記中的字串“Hello”。程式碼片段並不局限於一行原始碼:
<% for (int i=1; i<=4; i++) { %>
<H<%=i%>>Hello</H<%=i%>>
<% } %>.
注釋
最後一個主要的JSP元素是嵌入式注釋。儘管你始終可以在檔案中加入HTML注釋,但使用者在查看頁面原始碼時會看到這些注釋。如果你不想讓使用者看到它,你就應該將其嵌入“<%-- ?--%>” 標記中:
<%-- comment for server side only --%>.