在Struts2的开发中,我们会用到OGNL表达式。基本上在OGNL表达式中支持所有的Java操作符。但在使用时有些许不同。这里重点讲静态属性与方法的调用
许多人会仿照调用min方法的方式即@@main()来调用其它方法,那么可能就会出现错误。为什么呢?OGNL在调用静态方法属性时,需要类的名称为全称。而在Java.lang.Math类的默认方法则可以不填类的全名称。
看例子。
调用man;min方法。按规则我们需要这样写
@java.lang.Math@man(a,b);
@java.lang.Math@min(a,b);
但也可以简写为:
@@man(a,b);
@@min(a,b);
而调用其它类的方法或自己定义的方法时则需要按照规则来使用例如:
@java.lang.TX@login();