s:property的作用
<%--匯入標籤庫--%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<%--要想使用 ognl 表示式,需要借助 struts2 的標籤--%>
屬性:
value:取值是乙個ognl表示式。
執行結果:
此時瀏覽器不會有任何內容顯示
原因 這句話中有【ognlexpression】
這幾個字,這幾個字就說明它要去某個地方
找資料,那自然是找到了就顯示,找不到就什麼都不顯示了
ognl的寫法
<%--
ognl表示式的完整語法
--%>
ognl表示式的完整語法:
ognl表示式的完整語法:
ognl表示式的完整語法:
<%--
ognl表示式的簡單語法
--%>
ognl表示式的簡單語法:
ognl表示式的簡單語法:
ognl表示式的簡單語法:
把乙個ognl 表示式看成是字串的方式是:
%或者是%
到底是使用單引號還是雙引號,是由外層引號決定的。以上兩種都可以實現。
我們也可以簡寫,就是把外面的%{}去掉,直接用引號括住表示式。
'ognl表示式'或者是"ognl表示式"
<%--
把ongl表示式轉成字串:
可以單引號或者雙引號套起來就變成字串了
--%>
把ongl表示式轉成字串:
把ongl表示式轉成字串:
ognl表示式的強大之處在於它可以讓我們在表示式中訪問物件的方法,例如下面的**:
長度:value="'ognlexpression'.length()"/>
轉大寫:value="'ognlexpression'.touppercase()"/>
分隔:value="'ognlexpression'.split('e')"/>
ognl表示式訪問靜態屬性和靜態方法
ognl表示式還支援訪問靜態成員,這其中包括靜態屬性和靜態方法, 但是必須按照提供的格式編寫,
格式是:@包名.包名…類名@靜態屬性名稱。
這其中…的含義表示有幾級包,就寫幾個包名。
示例**如下:
int 的最大值:
ognl 表示式訪問靜態方法,需要開啟對靜態方法訪問的支援。
struts2 框架預設不支援 ognl 表示式的靜態方法呼叫,開啟的方式如下:
value="true">constant>
示例**如下:
隨機數:
list集合
用 html 在瀏覽器上輸出乙個單選性別:
type=
"radio" name="gender"
value="男"/>男
type=
"radio" name="gender"
value="女"/>女
用 struts2 的單選按鈕標籤輸出乙個單選
<%--
s:radio 用於在瀏覽器上顯示乙個單選按鈕
list 屬性取值是乙個 ognl 表示式
{} 相當於:
list list = new arraylist();
相當於: list.add("男");list.add("女");
--%>
map集合
用 html 在瀏覽器上輸出乙個單選性別:map 結構
type=
"radio" name="gender"
value="male"/>男
type=
"radio" name="gender"
value="female"/>女
#{}就表示建立了乙個 map
<%--
#{}就表示建立了乙個 map
裡面的寫法
# --%>
OGNL表示式使用
訪問值棧中的action的普通屬性 username 訪問值棧中物件的普通屬性 get set方法 wrong 訪問值棧中物件的普通屬性 get set方法 訪問值棧中物件的普通方法 訪問值棧中物件的普通方法 訪問值棧中action的普通方法 訪問靜態方法 訪問靜態屬性 訪問math類的靜態方法 訪...
el表示式跟ognl表示式的區別
el表示式 如果在struts環境中,它除了有在上面的四個作用域的取值功能外,還能從值棧 valuestack 中取值 特點 name在值棧中的查詢順序是 先從物件棧中取,取到終止,否則,向map中取。在物件棧的查詢順序是,先從model中找是否有name這個屬性,找到終止,否則,找action中是...
OGNL表示式學習筆記
訪問值棧中的action的普通屬性 username 訪問值棧中物件的普通屬性 get set方法 wrong 訪問值棧中物件的普通屬性 get set方法 訪問值棧中物件的普通方法 訪問值棧中物件的普通方法 訪問值棧中action的普通方法 訪問靜態方法 訪問靜態屬性 訪問math類的靜態方法 訪...