Struts2的action中四种不同的type类型(dispatcher,redirect,redirectAction,chain的区别)

dispatcher ---- 转发到某个页面

默认就是dispatcher,是直接转发到某一个页面

 <action name="hello" class="main.HelloAction">
 	<!-- 转发到index.jsp页面 -->
 	<result name="success" type="dispatcher">index.jsp</result>
 </action>

redirect ---- 重定向到某一个页面

redirect重定向到某一个页面,当前请求中的参数和属性不能再下一个页面使用。

<action name="testRedict" class="main.HelloAction">
	<!-- 重定向到index.jsp页面 -->
	<result name="success" type="redirect">index.jsp</result>
</action>

redirectAction ---- 重定向到某一个action

redirectAction与redirect类似,不过是重定向到某一个action,当前请求的参数和属性仍然不能在下一个页面使用。
另外,redirectAction可以跳转到不同package的action

<action name="test" class="main.LogAction" method="login">
	<result name="success" type="redirectAction">
		<!-- 设置跳转到的另外的包名 -->
		<param name="namespace">/</param>
		<!--设置需要跳转到的action-->
		<param name="actionName">hello</param>
	</result>
</action>

chain ---- 直接转发到另一个action

chain直接转发到另一个action,不用写后缀。

 <action name="testChain" class="main.HelloAction">
 	<result name="success" type="chain">hello</result>
 </action>

后缀是在Struts全局设置中设置的,因为我这里没有设置,所以感觉跟别的没什么区别。如果设置了后缀,其他的在访问的时候,比如访问/hello,就要在后边加上后缀,变成
/hello.do或者/hello.html。

 <!-- 设置后缀名为.do或者.html -->
 <constant name="struts.action.extension" value="do,html"></constant>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值