Struts2的Action方法调用

原创 2016年08月30日 23:14:25

Struts2一般由3种常见的Action动态调用的方法,第一种是在struts.xml文件中配置来实现,但是此方法的缺点是有多少个action方法就要配置多少个action标签,所以在大型项目中不方便使用。除此之外,常用的还有感叹号法和通配符法。

一、感叹号法

1、新建一个Action类,代码如下:

public class HelloWorldAction extends ActionSupport {
    public String add(){
        return "add";
    }

    public String update(){
        return "update";
    }

    @Override
    public String execute() throws Exception {
        System.out.println("执行Action");
        return SUCCESS;
    }
}

2、配置struts.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    "http://struts.apache.org/dtds/struts-2.3.dtd" >

<struts>
    <include file="struts-default.xml"></include>
    <package name="default" namespace="/" extends="struts-default">
        <action name="helloworld" class="action.HelloWorldAction">
            <result>/result.jsp</result>
            <result name="add">/add.jsp</result>
            <result name="update">/update.jsp</result>
        </action>
    </package>  

    <!-- 由于要使用感叹号这种方式,所以要用constant定义如下语句 -->
    <constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>
</struts>

3、在浏览器地址栏输入URL进行测试
http://localhost:8080/HelloWorld/helloworld!add.action
其中helloworld是action标签中的name,对应的是找到class属性中的Action类,以感叹号为分割,add是该类中的方法,返回的是result标签中的name属性值。

二、通配符法

版权声明:本文为博主原创文章,未经博主允许不得转载。

Struts2——Action动态方法调用

对于同一个表单,当用户通过不同的按钮提交同一个表单时,系统需要使用Action的不同方法来处理用户请求,这时Action便需要包含多个控制处理逻辑,即一个action中包含多个方法。例如:login界...

Struts2中Action的动态调用方法

在Struts2中,Action执行的时候并不一定要执行execute,我们可以指定Action执行哪个方法,下面分别介绍三种方法来指定Action执行哪个方法: 1.第一种方法,通过Action...

复习Struts2之Action动态方法调用

在实际开发项目中,一个Action类中可能包含多个处理逻辑的action方法,如果为每一个action方法去配制一个标签,可以想象,这将使得Struts2的配制文件变的何等的恐怖。庆幸的是Struts...

Struts2框架5.Action中动态方法调用

例如我我们的网站,现在有登陆功能,所以我们写了一个登陆的Action,现在我们想做注册功能,那么是不是还要再写一个注册的Action?。现在只有登陆和注册,只需要两个Action,但是我们网站功能越多...
  • gxy1317
  • gxy1317
  • 2016年08月14日 23:39
  • 137

【Struts2学习笔记(6)】Action动态方法调用

(1)在Struts1中我们使用动态方法调用的方法是:

Struts2基础之四:动态方法调用(DMI)和action通配符

一·:动态方法调用(DMI) struts.xml中新增一个配置,如下 /result.jsp ...

struts2 DMI用感叹号动态调用方法时提示there is no action mapped for

转自:http://www.cnblogs.com/li-peng/p/3782395.html 在使用DMI(动态方法调用)的时候要注意struts.xml配置时要把 ...

Struts2中调用Action的方法

Struts2中Action的调用方法可以分为三种 第一种:首先定义一个Action类,这个类中有两个方法一个登录,一个注册 public String login(){ System.out...
  • vcvcttt
  • vcvcttt
  • 2016年06月28日 23:36
  • 325

Struts2动态方法调用和使用通配符定义action

在Struts2中动态方法调用有两种方式,动态方法调用就是为了解决一个Action对应多个请求的处理,以免Action太多。 一、感叹号方式(需要开启) 官网不推荐使用这种方式,建议大家不要使用。...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Struts2的Action方法调用
举报原因:
原因补充:

(最多只允许输入30个字)