struts2中通配符和DMI(动态方法调用)

在struts2中不建议使用Dynamic Method Invocation,具体原因见官方文档:

http://struts.apache.org/docs/action-configuration.html#ActionConfiguration-WildcardMethod;

刚刚接触这块,所以两种方法各自实现一下:

1)动态方法调用:

struts.xml文件:

<package name="default" namespace="/yin" extends="struts-default">
        <action name="yin" class="com.sel.myAction">
            <result name="success">
                /demo.jsp
            </result>
        </action>
    </package>

action类:

public class myAction extends ActionSupport{

    private static final long serialVersionUID = 1L;

    public String add(){
          return SUCCESS;
      }
}

访问demo.jsp页面对应的URL地址为:

request.getContextPath()/yin/yin!add

注意:在struts2.3中:

<constant name="struts.enable.DynamicMethodInvocation" value="false" />    默认是false要改为true.

2) 通配符方法调用

struts.xml配置:

<package name="default" namespace="/test" extends="struts-default">
        <action name="*test" class="com.sel.ac" method="{1}">
            <result>
                /demo.jsp
            </result>
        </action>
    </package>

此时的访问URL为:request.getContextPath()/test/addtest

时间: 2024-10-05 16:21:51

struts2中通配符和DMI(动态方法调用)的相关文章

Struts2的DMI动态方法调用

Struts2的DMI动态方法调用:!后面跟方法名 struts.xml里要加<constant name="struts.enable.DynamicMethodInvocation" value="true"/> 因为有的版本默认是false

Struts2学习第七课 动态方法调用

动态方法调用:通过url动态调用Action中的方法. action声明: <package name="struts-app2" namespace="/" extends="struts-default"> <action name="Product" class="org.simpleit.app.Product"> </package> URI: --/strut

Structs2 DMI动态方法调用

Action执行的时候并不是一定要执行execute方法 可以在配饰魏积安中配置Action的时候用method=来制定执行那个方法, 也可以在url地址中动态指定(动态方法调用MDI) 要说明的是: 前者会产生太多的action 如:<action name="user" class="com.b510.hongten.UserAction" method="add"> <result>/user.jsp</res

Struts2中DMI(动态方法调用)

1 <package name="front" namespace="/front" extends="struts-default"> 2 <default-action-ref name="index" /> 3 <action name="helloword" class="struts.IndexAction"> 4 <result na

DMI(Dynamic Method Invocation) 动态方法调用

创建action,内容如下: package action; import com.opensymphony.xwork2.ActionSupport; public class A extends ActionSupport { public String toJsp(){ return "success"; } } 配置struts.xml,内容如下: <?xml version="1.0" encoding="UTF-8" ?>

Struts2 Action中动态方法调用、通配符的使用

一.Struts2执行过程图: 二.struts2配置文件的加载顺序 struts-default.xml---struts-plugin.xml---struts.xml 具体步骤: 三.Action中动态方法调用<Dynamic Method Invocation> DMI 第一种方式: 自定义DMIAction类,使它继承ActionSupport类,该类无需手动重写execute(),底层有默认实现.因此我们也可以自定义方法list. struts.xml中的action元素植入met

第三章Struts2 Action中动态方法调用、通配符的使用

01.Struts 2基本结构 使用Struts2框架实现用登录的功能,使用struts2标签和ognl表达式简化了试图的开发,并且利用struts2提供的特性对输入的数据进行验证,以及访问ServletAPI时实现用户会话跟踪,其简单的程序运行流程图如下 Struts2框架是基于MVC模式.基于MVC模式框架的核心就是控制器对所有请求进行统一处理.Struts2的控制器StrutsPrepareAndExecuteFilter由ServletAPI中的Filter充当,当web容器的接收到登录

struts2的动态方法调用(DMI)和通配符映射

动态方法调用 1.Struts2默认关闭DMI功能,需要使用需要手动打开,配置常量 [html] view plain copy struts.enable.DynamicMethodInvocation = true 2.使用“!”方法,即action名称!方法名称. struts.xml [html] view plain copy <action name="query" class="action.QueryAction"> <result

Struts2动态方法调用(DMI)

在Struts2中动态方法调用有三种方式,动态方法调用就是为了解决一个Action对应多个请求的处理,以免Action太多 第一种方式:指定method属性这种方式我们前面已经用到过,类似下面的配置就可以实现 <action name="chainAction" class="chapter2.action.Chapter2Action" method="chainAction"> <result name="chai