Struts2——Action动态方法调用

本文介绍了Struts2中Action的动态方法调用(DMI),讲解了如何在一个Action中处理多个用户请求,并通过配置method属性和使用通配符实现方法调用。在DMI模式下,可以通过'Action名!方法名'的形式调用Action中的具体方法,减少重复配置,提高代码的灵活性。

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

     对于同一个表单,当用户通过不同的按钮提交同一个表单时,系统需要使用Action的不同方法来处理用户请求,这时Action便需要包含多个控制处理逻辑,即一个action中包含多个方法。例如:login界面有“登录”和“注册”两个按钮,分别触发UserAction中的login和regist方法。

MVC模式:

     经典MVC模式中,事件由控制器(controller)处理,控制器根据事件类型改变视图(view),简言之,每个模型对应一系列的视图列表,不同事件通过控制器触发,获取模型(model)数值,返回不同的视图去呈现。

struts2——MVC模式实践者:

     Action充当控制器(Controller),浏览器中URL地址输入指定action名称,触发struts核心控制器StrutsPrepareAndExecuteFilter实例化出指定action对象,调用action中指定方法,通过方法返回值,读struts.xml配置文件返回指定jsp页面(view)。

DMI——Action动态方法调用:

         初学时,action中方法总是比较单一的;例如上述登录和注册的例子,一般会创建两个action类,loginAction 和registeAction,分别写好login和registe相关的业务逻辑;在struts配置文件中也配置两个action: 

		<action name="regist" class="cn.itcast.shop.user.action.loginAction">
			<result name="msg">/WEB-INF/jsp/regist.jsp</result>
		</action>
		
		<action name="login" class="cn.itcast.shop.user.action.registeAction"> 
			<result name="login">/WEB-INF/jsp/login.jsp</result>	 
 			<result name="loginSuccess" type="redirectAction">index</result>		 
		</action>

        但实际应用

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值