上一篇(http://www.cnblogs.com/denisechen/p/4644275.html)提到,action执行的时候并不一定要执行execute方法。那么该如何决定要调用的方法?有以下三种方式:
1.使用method属性指定具体方法
这种方法会使得创建的action非常多。
1 <action name="order" class="com.action.Order" method="add"> 2 <result name="add">/success.jsp</result> 3 </action>
2.动态方法调用(DMI)
action中并无特别,一个action下可以包含多个result。
1 <action name="order" class="com.action.Order"> 2 <result name="add">/add.jsp</result> 3 <result name="delete">/delete.jsp</result> 4 </action>
使用!访问方法,以下是jsp文件中调用示例:
1 <a href="order!add.action"> 添加订单 </a> 2 <a href="order!delete.action"> 删除订单</a>
3.使用通配符(推荐)
使用{}括号里加数字的方式,可以有多个通配符,按顺序匹配。
1 <action name="order*" class="com.action.Order" method="{1}"> 2 <result name="{1}">/order{1}.jsp</result> 3 </action>
在jsp中调用时:
1 <a href="orderadd.action"> 添加订单 </a> 2 <a href="orderdelete.action"> 删除订单</a>
原文:http://www.cnblogs.com/denisechen/p/4645667.html