码迷,mamicode.com
首页 > 其他好文 > 详细

Action的动态调用方法

时间:2015-08-05 20:02:25      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:

Action执行的时候并不一定要执行execute方法,我们可以指定Action执行哪个方法:

1、 方法一(通过methed属性指定执行方法)

可以在配置文件中配置Action的时候用method=来指定执行哪个方法

<action name="userAdd" class="com.bjsxt.struts2.user.action.UserAction" method="add">

            <result>/user_add_success.jsp</result>

</action>

    这样,只要在action的对象中有一个add的方法,并且返回类型为String就可以了。如果没有method属性,则默认执行execute()方法。

import com.opensymphony.xwork2.ActionSupport;

public class UserAction extends ActionSupport {

    public String add() {

       return SUCCESS;

    }  

}

2、 动态方法调用DMI(推荐)

可以在url地址中动态指定action执行那个方法。Url地址如下:

方法:action + ! + 方法名

注:只要Action对象中有这个方法,并且返回类型为String就可以调用。

这样Struts.xml配置文件中不需要配置methed属性。代码如下:

<action name="user" class="com.bjsxt.struts2.user.action.UserAction">

       <result>/user_add_success.jsp</result>

</action>

Action类:

public class UserAction extends ActionSupport {

    public String add() {

       return SUCCESS;

    }  

}

    总结:推荐使用第二种动态方法调用DMI,因为第一种需要大量的Action配置,后者可以在url中动态指定执行action中哪个方法。

Action的动态调用方法

标签:

原文地址:http://www.cnblogs.com/jym-sunshine/p/4705477.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!