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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

关于OGNL表达式中的%,$,#

發(fā)布時間:2023/11/27 生活经验 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于OGNL表达式中的%,$,# 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
OGNL表達式非常強大~其中#、%、$這三個符號在OGNL表達式中經常出現,而這三種符號也是開發(fā)者不容易掌握和理解的部分,要認真區(qū)分。
? 1.#符號的用途一般有三種。

?? 1)訪問非根對象屬性,例如示例中的#session.msg表達式,由于Struts 2中值棧被視為根對象,所以訪問其他非根對象時,需要加#前綴。實際上,#相當于ActionContext. getContext();#session.msg表達式相當于ActionContext.getContext().getSession(). getAttribute(”msg”)?。

??? 2)用于過濾和投影(projecting)集合,如示例中的persons.{?#this.age>20}。

??? 3)用來構造Map,例如示例中的#{’foo1′:’bar1′,?’foo2′:’bar2′}。

2.%符號

%符號的用途是在標志的屬性為字符串類型時,計算OGNL表達式的值。如下面的代碼所示:
構造Map
<s:set name=”foobar” value=”#{’foo1′:’bar1′, ‘foo2′:’bar2′}” />

?

The value of key “foo1″ is <s:property value=”#foobar['foo1']” />

?

?

不使用%:<s:url value=”#foobar['foo1']” />

?

?

使用%:<s:url value=”%{#foobar['foo1']}” />

?

?

3.$符號

$符號主要有兩個方面的用途。

?? 在國際化資源文件中,引用OGNL表達式,例如國際化資源文件中的代碼:reg.agerange=國際化資源信息:年齡必須在${min}同${max}之間。

??? 在Struts 2框架的配置文件中引用OGNL表達式,例如下面的代碼片斷所示:

<validators>

??? <field name=”intb”>

??????????? <field-validator type=”int”>

??????????? <param name=”min”>10</param>

??????????? <param name=”max”>100</param>

??????????? <message>BAction-test校驗:數字必須為${min}為${max}之間!</message>

??????? </field-validator>

??? </field>

</validators>

轉載于:https://www.cnblogs.com/wshwenwen/archive/2010/05/14/1735522.html

總結

以上是生活随笔為你收集整理的关于OGNL表达式中的%,$,#的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。