表達式語言(EL
)是jsp2.0
引入的一種計算和輸出java
對象的簡單語言;
EL語言是JSTL輸出(輸入)一個JAVA表達式的表示形式。
EL
是jsp2.0
的兩個最重要的新特征之一,另一個是可以使用jsp
語法定義自定義標記。EL
為不熟悉java
語言的頁面開發人員提供了一個開發jsp
應用的新途徑。
在JSTL中,EL語言只能在屬性值中使用。EL語言只能通過建立表達式$來進行調用。在屬性值中使用表達式有三種方式。
1、 value屬性包含一個表達式
<some:tag value="$"/>
在這種情況下,表達式值被計算出來并根據類型轉換規則賦值給value屬性。比如:<c:out value="$" />中的$就是一個EL,它相當于JSP語句<%=request.getAttribute(“username”)%>或<%=session.getAttribute(“username”)%>
2、 value屬性包含一個或多個屬性,這些屬性被文本分割或圍繞
<some:tag value="some$$text$"/>
在這種情況下,表達式從左到右進行計算,并將結果轉換為字符串型(根據類型轉換規則),并將結果賦值給value屬性
3、 value屬性僅僅包含文本
<some:tag value="sometext"/>
在這種情況下,字符串型屬性value將根據類型轉換規則轉換為標簽所希望的類型。EL語言的操作符
取得某個對象或集合中的屬性值為了獲得集合中的屬性,EL支持以下兩種操作
1. 使用.操作符來獲得有名字的屬性。例如表達式$表明對象user的username屬性
2. 使用[]操作符來獲得有名字或按數字排列的屬性。
表達式$和表達式${user. username }含義相同
表達式$ 表明row集合的第一個條目。
在這里user是一個類的對象,它的屬性username必須符合標準JavaBean的規范,即必須為username屬性定義相應的getter、setter方法。
Empty操作符(空值檢查)
使用empty操作符來決定對象、集合或字符串變量是否為空或null。例如:
${empty param.username}
如果request的參數列表中的username值為null,則表達式的值為true。 EL也可以直接使用比較操作符與null進行比較。如${param.firstname == null}。
比較操作符 操作符 描述
==或eq 相等檢查
!=或ne 不等檢查
<或lt 小于檢查
>或gt 大于檢查
<=或le 小于等于檢查
>=或ge 大于等于檢查
posted on 2008-09-26 19:53
老丁 閱讀(644)
評論(0) 編輯 收藏 所屬分類:
jstl