Struts2跳转

action的配置中,有一个为"redirectAction”(重定向到一个Action)和chain(就是所谓的action请求链)的action类型
顺便说一下struts2的action type:
chain 用来处理Action链
dispatcher 用来转向页面,通常处理JSP
redirect 重定向到一个URL
redirectAction(或redirect-action) 重定向到一个Action

redirect:重定向,新页面无法显示第一个Action中的数据,因为底层调用的是response.sendRedirect("...")方法,无法共享请求范围内的数据,参数与dispatcher用法相同;
chain:将action的带着原来的状态请求转发到新的action,两个action共享一个ActionContext,actionName指定转向的新的Action的名字,method指定转向哪个方法,namespace指定新的Action的名称空间,不写表示与原Action在相同的名称空间
redirect-action:重定向到另一个Action,参数与chain用法相同,允许将原Action中的属性指定新名称带入新Action 中,可以在Result标签中添加 <param name=”b”>${a} </param>,这表示原Action中的变量a的值被转给b,下一个Action可以在值栈中使用b来操作,注意如果值是中文,需要做一些编码处理,因为Tomcat默认是不支持URL直接传递中文的!

示例:
在一下讨论主题下保存讨论意见后,直接跳转到显示该讨论主题下所有的讨论意见页面
<!--保存讨论意见-->
<action name="saveDiscussContext" class="com.discuss.DiscussAction"
method="saveDiscussContext">
<result name="success" type="chain"><!--注意type是chain类型-->
<param name="namespace">/discuss</param>
<param name="actionName">findDiscussContextBySeqNum</param>
<!--actionName是另外一个配置的action findDiscussContextBySeqNum是查找所有讨论意见的action-->
</result>
</action>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值