Struts2 OGNL調用公共靜態方法
一直以來都知道Struts2的OGNL支持在前台調用後台的靜態方法,以前也用過,但用的比較少,今天自己重新開始了一個新的項目,在實現一個功能的時候用到了Struts2的在前台調用後台的靜態方法,弄了半天沒有出來結果,原來是自己沒有在Struts的配置文件裡面申明可以在前台使用後台的靜態方法,故寫出來供自己以後參考參考,並以此為教訓。
假設有一個com.xxx.util.Util類,其中有一個叫sayHello的公共靜態方法:
public static String sayHello(String name) { return "HELLO " + name; }
那麼在前台就可以這樣來調用該靜態方法:
<:property value="@com.xxx.util.Util@sayHello('tiantian')"/>
要使在前台能夠順利的調用後台的公共靜態方法,還需要在Struts的配置文件裡面申明可以在前台調用後來的靜態方法
<constant name="struts.ognl.allowStaticMethodAccess" value="true"></constant>
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!