jsp,OGNL调用后台Action的某方法

时间:2023-03-09 05:23:08
jsp,OGNL调用后台Action的某方法
用%{}可取出valueStack中的Action,可直接调用其方法.

%{testa('key')} 即可调用到action的testa(String s) 方法

但这些都需要结合struts2的标签. 如:<s:property value="%{testa('key')}" />

key是需要传的参数,后台的testa方法的返回值是String类型的,key是值,
例如<s:property value="%{testa(#u.tbPriceGreade.priceGreade)}"/>
经过本人试验,返回值也可以是list集合,这个时候一般用在遍历<select> 的时候用的
   <s:iterator id="Ids1" value="%{getlistTblSuperPprice(#li.productId)}" status="stat4" >   getlistTblSuperPprice返回的是list集合
如果如果单独的一个固定的值就得用'key',不过这种固定值情况很少出现,因为没什么意义
另外还有一种方式:
 <s:property value="@com.zycloud.dao.TbMachineRoomDAO@findMachineRoom(#session.tblOrderMYself.categoryId).machineRoomName"/>
大家一看就明白了吧