日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OGNL使用方法总结

發(fā)布時間:2024/4/14 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OGNL使用方法总结 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1、訪問屬性

名字屬性獲取:<s:property value="user.username"/><br>地址屬性獲取:<s:property value="user.address.addr"/><br>

2、訪問方法

調(diào)用值棧中對象的普通方法:<s:property value="user.get()"/><br>

3、訪問靜態(tài)屬性和方法

調(diào)用Action中的靜態(tài)方法: <s:property value="@struts.action.LoginAction@get()"/>調(diào)用JDK中的類的靜態(tài)方法: <s:property value="@java.lang.Math@floor(44.56)"/><br>調(diào)用JDK中的類的靜態(tài)方法(同上): <s:property value="@@floor(44.56)"/><br>調(diào)用JDK中的類的靜態(tài)方法: <s:property value="@java.util.Calendar@getInstance()"/><br>調(diào)用普通類中的靜態(tài)屬性: <s:property value="@struts.vo.Address@TIPS"/><br>

4、訪問構(gòu)造方法

調(diào)用普通類的構(gòu)造方法: <s:property value="new struts.vo.Student('李曉紅' , '美女' , 3, 25).username"/>

5、訪問數(shù)組

獲取List:<s:property value="testList"/><br>獲取List中的某一個元素(可以使用類似于數(shù)組中的下標(biāo)獲取List中的內(nèi)容):<s:property value="testList[0]"/><br>獲取Set:<s:property value="testSet"/><br>獲取Set中的某一個元素(Set由于沒有順序,所以不能使用下標(biāo)獲取數(shù)據(jù)):<s:property value="testSet[0]"/><br> ×獲取Map:<s:property value="testMap"/><br>獲取Map中所有的鍵:<s:property value="testMap.keys"/><br>獲取Map中所有的值:<s:property value="testMap.values"/><br>獲取Map中的某一個元素(可以使用類似于數(shù)組中的下標(biāo)獲取List中的內(nèi)容):<s:property value="testMap['m1']"/><br>獲取List的大小:<s:property value="testSet.size"/><br>

6、訪問集合 – 投影、選擇(? ^ $)

利用選擇獲取List中成績及格的對象: <s:property value="stus.{?#this.grade>=60}"/><br>利用選擇獲取List中成績及格的對象的username:<s:property value="stus.{?#this.grade>=60}.{username}"/><br>利用選擇獲取List中成績及格的第一個對象的username:<s:property value="stus.{?#this.grade>=60}.{username}[0]"/><br>利用選擇獲取List中成績及格的第一個對象的username:<s:property value="stus.{^#this.grade>=60}.{username}"/><br>利用選擇獲取List中成績及格的最后一個對象的username:<s:property value="stus.{$#this.grade>=60}.{username}"/><br>利用選擇獲取List中成績及格的第一個對象然后求大小:<s:property value="stus.{^#this.grade>=600}.{username}.size"/><br>

7、集合的偽屬性

OGNL能夠引用集合的一些特殊的屬性,這些屬性并不是JavaBeans模式,例如size().length()等等. 當(dāng)表達(dá)式引用這些屬性時,OGNL會調(diào)用相應(yīng)的方法,這就是偽屬性.

8、Lambda :[…]
格式::[…]

使用Lambda表達(dá)式計算階乘: <s:property value="#f = :[#this==1?1:#this*#f(#this-1)] , #f(4)"/><br>

要了解更多內(nèi)容請查看OGNL表達(dá)式官方文檔:
http://commons.apache.org/proper/commons-ognl/language-guide.html

總結(jié)

以上是生活随笔為你收集整理的OGNL使用方法总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。