之间的主要区别是什么redirect
and redirectAction
在Struts2.3上下文中。
我看过以下网址redirect http://struts.apache.org/release/2.0.x/docs/redirect-result.html and 重定向动作 http://struts.apache.org/release/2.0.x/docs/redirect-action-result.html.
我清楚以下几点:
- 重定向就像 sendRedirect() 方法。创建新请求,清除以前的值堆栈和不再可用的操作(操作实例、操作错误、字段错误等)。
- In
redirectAction
,控制跳转到不同的动作(在相同或其他包中)
-
redirectAction
推荐使用重定向。
但是当我实现上面提到的两个例子时,我只需要改变我的struts.xml
.
- 在这两种情况下,行动都不再可用,
- 新请求已创建,
- 生成的 URL 是相同的。
首先,我对 Apache 文档中写的语句感到困惑redirectAction
这比 ServletRedirectResult 更好,因为它不
要求您对 ActionMapper 处理的 URL 模式进行编码
到你的 struts.xml 配置文件中。这意味着你可以改变
您的 URL 模式在任何时候您的应用程序仍然可以工作。
强烈建议如果您要重定向到另一个
操作,您使用此结果而不是标准重定向结果。
其次,我仍然不太清楚这两者之间的区别。
区别很明显:redirectAction
只是另一种结果类型,它扩展了redirect
提供属性的结果类型actionName
, namespace
, and method
。这些属性用于构建 URI,用于替代location
的属性redirect
结果类型。
声明没问题,最好从以下位置构建 URLActionMapping
这是由redirectAction
结果类型而不是手动编码。即使手动也总是使用UrlHelper
而不是硬编码。在 JSP 中始终使用s:url
tag.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)