Struts2中Action配置的三种方式

本文详细介绍了Struts框架中的三种方法调用方式:单一Action对应多个方法、动态方法调用(DMI)及通配符(Wildcard)。通过具体的配置示例,帮助读者理解如何灵活地管理和调用Action中的不同业务逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<!-- 
            方案一:一个action对应一个方法;
        -->
        
        <action name="add" class="com.gxxy.struts.kp03_methodcall.MultiMethodCall" method="add">
            <result>/views/kp02_action/action.jsp</result>
        </action>
        <action name="delete" class="com.gxxy.struts.kp03_methodcall.MultiMethodCall" method="delete">
            <result>/views/kp02_action/action.jsp</result>
        </action>
        <action name="update" class="com.gxxy.struts.kp03_methodcall.MultiMethodCall" method="update">
            <result>/views/kp02_action/action.jsp</result>
        </action>
        <action name="query" class="com.gxxy.struts.kp03_methodcall.MultiMethodCall" method="query">
            <result>/views/kp02_action/action.jsp</result>
        </action>
        
        <!-- 
            方案二: 动态方法调用(DMI)
                DMI: Dynamic Method Invocation
                http://host:port/contextPath/namespace/actionName!methodName
                -->
          注意:一般动态方法调用都默认为false,首先要设置为true
          <constant name="struts.enable.DynamicMethodInvocation" value="true"/>
<action name="call" class="com.gxxy.struts.kp03_methodcall.MultiMethodCall"> <result>/views/kp02_action/action.jsp</result> </action> <!-- 方案三: 通配符(Wildcard) 把当前请求过来的地址进行过滤, 凡是以call_为actionName的请求都通过, 把请求地址中*所代表的 所有字符串放在后面的属性的值中, 值使用{} --> <action name="call_*" class="com.gxxy.struts.kp03_methodcall.MultiMethodCall" method="{1}"> <result>/views/kp02_action/action.jsp</result> </action> <action name="test_*" class="com.gxxy.struts.kp03_methodcall.TestCall" method="{1}"> <result>/views/kp02_action/action.jsp</result> </action> <action name="*_*" class="com.gxxy.struts.kp03_methodcall.{1}Call" method="{2}"> <result>/views/kp02_action/action.jsp</result> </action> <!-- http://localhost/struts/method/Test_update -->

 

转载于:https://www.cnblogs.com/zhang-bo/p/6527616.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值