Ognl
获取List<s:property value="list" /> 获取List中的某一个元素<s:property value="list[0]" /> 获取List的大小<s:property value="list.size" /> 获取Set<s:property value="set" /> 无法获取Set中的某一个元素,因为Set没有顺序 获取Map<s:property value="map" /> 获取Map中所有key的值<s:property value="map.keys" /> 获取Map中所有value的值<s:property value="map.values" /> 获取Map中的某一个元素<s:property value="map['k1']" />
获取List所有对象
<s:property value="listObject" />,需要重写toString()方法才能正常显示对象的值 利用投影获取List中所有对象的username属性
<s:property value="listObject.{username}" /> 利用投影获取List中第一个对象的username属性
<s:property value="listObject.{username}[0]" /> 利用选择获取List中年龄大于30的对象
<s:property value="listObject.{?#this.age>30}" /> 利用选择获取List中年龄大于30的对象的username
<s:property value="listObject.{?#this.age>30}.{username}" /> 利用选择获取List中年龄大于30的第一个对象的username
<s:property value="listObject.{?#this.age>30}.{username}[0]" />
或<s:property value="listObject.{^#this.age>30}.{username}" /> 利用选择获取List中年龄大于30的最后一个对象的username
<s:property value="listObject.{$#this.age>30}.{username}" />
获取parameters中的属性<s:property value="#parameters.name" /> 获取request中的属性<s:property value="#request.name" /> 获取session中的属性<s:property value="#session.name" /> 获取application中的属性<s:property value="#application.name" /> <s:property value="#attr.name" />按顺序遍历上面四个对象,然后返回首先找到的值