1. 程式人生 > >軟體開發實訓(720)4.0

軟體開發實訓(720)4.0

內容關鍵詞:JSTL,out,set,remove

授課老師:720張森鵬

知識筆記:在運算表示式時,out 標籤是將結果輸出到當前的 JspWriter。out 的語法有兩種形式,即

有 body content 和沒有 body content。out 中的 default 屬性可以賦一個預設值,當賦予其 value 屬性的 EL 表示式返回 null 時,就會顯示預設值。default 屬性可以賦動態值,如果這個動態值返回 null,out 就會顯示一個空的字串。


利用 set 標籤,可以完成以下工作:
(1)建立一個字串和一個引用該字串的有界變數。
(2)建立一個引用現存有界物件的有界變數。

(3)設定有界物件的屬性。

如果用 set 建立有界變數,那麼,在該標籤出現後的整個 JSP 頁面中都可以使用該變數。
set 標籤的語法有 4 種形式。第一種形式用於建立一個有界變數,並用 value 屬性在其中定義一個要建立的字串或者現存有界物件。


remove 標籤用於刪除有界變數,其語法如下:
<c:remove var="varName"

[scope="{page|request|session|application}"]/

注意,有界變數引用的物件不能刪除。因此,如果另一個有界物件也引用了同一個物件,仍然可以通過另一個有界變數訪問該物件。

條件行為用於處理頁面輸出取決於特定輸入值的情況,這在 Java 中是利用 if、 if …else和 switch 宣告解決的。

JSTL 中執行條件行為的有 4 個標籤,即 if、choose、when 和 otherwise 標籤。下面分別對其進行詳細講解。

if 標籤是對某一個條件進行測試,假如結果為 True,就處理它的 body content。測試結果儲存在 Boolean 物件中,並建立有界變數來引用這個 Boolean 物件。利用 var 屬性和 scope 屬性分別定義有界變數的名稱和範圍。

if 的語法有兩種形式。第一種形式沒有 body content。
<c:if test="testCondition" var="varName"

[scope="{page|request|session|application}"]/>

在這種情況下,var 定義的有界物件一般是由其他標籤在同一個 JSP 的後續階段進行測試。

第二種形式中使用了一個 body content。
<c:if test="testCondition [var="varName"]
[scope="{page|request|session|application}"]>
body content

</c:if>