009——struts2的OGNL

OGNL主要有三个符号:#,%,$

"#"声明OGNL表达式

#是Struts2标签中最常用的符号。#有三种用途

(1)能够访问OGNL上下文与ActionContext资源,相当于ActionContext.个体Context()。常用的"#"属性如下


(2)用于过滤或筛选集合,例如:books.{?#this.price<20},表示所有的price<20的书。

(3)构造Map,如#{'fool':"bar1", 'fool2':"bar2"}

"%"显式声明OGNL表达式

%用于表示某字符串为一个OGNL表达式。某些标签中既能接受字符串,又能接受OGNL表达式。这时候,标有%的被当做OGNL表达式并被执行,没有标有%的被当做普通的字符串,例如

<struts:label label="#request.account" /><!-- 参数作为普通字符串 -->

<struts:label label="%{#request.account}" /><!-- 用%表示参数为OGNL -->

第一行代码会输出字符串request.account,第二行代码会输出request的account属性值

"$”在资源文件中引用OGNL表达式

$主要用于在资源国际化文件中或者struts.zml中引用OGNL表达式,例如:

Resources.properties:

validation.require=${getText(fileName)} is required

struts.xml::

<action name="AddPhoto" class="addPhoto">

<result type="redirect">ListPhotos.action?albumId=${album|Id}</result>

</action>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值