您的位置:首页 > 编程语言 > Java开发

Struts2的dispatcher,chain,redirect和redirectAction的区别

2014-04-13 16:36 441 查看
1.跳转方式

dispatcher和chain是服务器端跳转,所以客户端只发起一次请求,产生一个action;

redirect和redirectAction是客户端跳转,所以客户端发起两次请求。

2.跳转内容

dispatcher和redirect跳转的是views(一般是jsp页面);

chain和redirectAction跳转的是一个action。

 

 

(1)type="dispatcher" 为默认,用于jsp页面跳转 

<result name="success">/index.jsp</result> 

完整的写法为: 

<result name="success" type="dispatcher"> 

<param name="location">/index.jsp</param> 

</result>

(2)type="redirect" 重定向到jsp、action、外部网址

<result name="success" type="redirect">/index.jsp</result> 

<result name="success" type="redirect">/login.do</result> 

<result name="success" type="redirect">http://www.baidu.com</result>

重定向时带参数处理方法:

1.type="redirect": 

<result name="success" type="redirect">/login.do?userId=${userId }</result> 

2.type="redirect-action": 

见(3)

(3)type="redirect-action" 重定向到另外一个action

<result name="success" type="redirect-action"> 

<param name="actionName">login.do</param> 重定向action名

<param name="userId">userId</param>带的参数

</result>

(4)type="chain" 用于action跳转。 

<action name="action1" class="org.Action1"> 

<result name="success" type="chain">action2.do</result> 

</action> 

<action name="action2" class="org.Action2"> 

<result name="success">login.jsp</result> 

</action>

(5)type="plaintextj" 跳转显示源代码

<result name="err" type="plaintext"> 

<param name="location">具体的位置</param> 

<param name="charSet">字符规范(如GBK)</param> 

</result>

转自:http://u.unao.blog.163.com/blog/static/106422920201210106151352/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  struts2