zoukankan      html  css  js  c++  java
  • struts2动态方法调用

    如果Action中存在多个方法时,我们可以使用!+方法名调用指定方法。如下:

    public class HelloWorldAction{
        private String message;
        ....
        public String execute() throws Exception{
            this.message = "我的第一个struts2应用";
            return "success";
        }
    
        public String other() throws Exception{
            this.message = "第二个方法";
            return "success";
        }
    }

    假设访问上面action的URL路径为: /struts/test/helloworld.action
    要访问action的other() 方法,我们可以这样调用:
    /struts/test/helloworld!other.action
    如果不想使用动态方法调用,我们可以通过常量struts.enable.DynamicMethodInvocation关闭动态方法调用。

    <constant name="struts.enable.DynamicMethodInvocation" value="false"/>
    <package name="itcast" namespace="/test" extends="struts-default">
        <action name="helloworld_*" class="cn.itcast.action.HelloWorldAction" method="{1}">
            <result name="success">/WEB-INF/page/hello.jsp</result>
        </action>
    </package>
    public class HelloWorldAction{
        private String message;
        ....
        public String execute() throws Exception{
            this.message = "我的第一个struts2应用";
            return "success";
        }
    
        public String other() throws Exception{
            this.message = "第二个方法";
            return "success";
        }
    }

    要访问other()方法,可以通过这样的URL访问:/test/helloworld_other.action

    method=”{1}”中的{1}指获取通配符第一个字符,“{1}”同样也可用于class=“”和result路径中

  • 相关阅读:
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    2.5.3 表单过滤器
    2.5.2 子过滤器
    2.5.1 位置过滤器:
    2.4 通过属性来选择元素
    2.3 根据层级查找元素
    2.2.4 元素选择器
    2.2.3 Class选择器
    2.2.2 ID选择器
  • 原文地址:https://www.cnblogs.com/lllini/p/11955378.html
Copyright © 2011-2022 走看看