OGNL访问静态方法、静态属性
(1)访问静态方法或者静态属性的语法分别为:@类的路径@方法名,@类的路径@属性名,语法中类的路径,即包名+类名。
(2).对于OGNL来说,java.lang.Math是其默认的类,如果调用java.lang.Math的静态方法时,无需指定类的名字
比如:@@max(2,10),就比较两者谁比较大,输出较大的那个数。
注:(1)可以理解为调用一个类的静态方法和静态属性
(2)可以理解为调用JDK类中的静态方法。
具体操作的步骤:
(1) 创建一个类
package com.hlx.entity;
public class StaticTest {
public static String string="测试静态属性";
public static String getString(){
return "这是~>测试静态方法!";
}
}
(2) JSP页面来测试
access static property:<s:property value="@com.hlx.entity.StaticTest@string"/><br/>
access static method: <s:property value="@com.hlx.entity.StaticTest@getString()"/><br/>
访问java.lang.Math类的静态方法:<s:property value="@java.lang.Math@max(10,5)"/><br/>
访问java.lang.Math类的静态方法:<s:property value="@@min(10,5)"/><br/>
<constant name="struts.ognl.allowStaticMethodAccess" value="true"/>
(4)运行效果: