ognl笔记

访问值栈中对象的普通方法
<s:property value="对象名.方法名()"/>
访问action中的普通方法
<s:property value="方法名()"/>

在jsp中使用ognl访问静态属性/方法
@完整的类名@属性名
@完整的类名@方法名()

如果要通过ognl访问静态方法,必须在struts.properties或者struts.xml中将选项struts.ognl.allowStaticMethodAccess设置为true
注:需要在struts.xml中配置<constant name="struts.ognl.allowStaticMethodAccess" value="true"></constant>
正序号
<s:property value="%{(#ss.getIndex()+1) + ((@java.lang.Integer@parseInt(#request.currentPage)-1)*5)}"/>序号表达式算法

倒序号

<s:property value="%{(@java.lang.Integer@parseInt(#request.total)+1)-((#ss.getIndex()+1) + ((@java.lang.Integer@parseInt(#request.currentPage)-1)*5))}"/>

 

访问math类的静态方法:
@@max(2,3);
访问普通类的构造方法
<s:property value="new 完整类名.构造方法名(实参)"/>//要求重写类的toString()方法


使用ognl访问list
<s:property value="list名称"/> //list中的元素的字符串表示形式
list中某个元素
<s:property value="list名称[元素索引]"/>
list中元素某个属性的集合
<s:property value="list名称{属性名}"/>
list中元素某个属性集合中的特定值
<s:property value="list名称{属性名}[索引]"/>/<s:property value="list名称[索引].属性名"/>

你可能感兴趣的:(Ognl)