浏览 6556 次
锁定老帖子 主题:关于Struts2的action重定向
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-02-02
最后修改:2011-02-02
"redirect"实现action的重定向:
<result name="error" type="redirect"> Register.action?username=${username} </result>
"redirectAction"实现action的重定向:
<result name="error" type="redirectAction"> <param name="actionName">Register</param> <param name="username">${username}</param> </result>
或者:
<result name="error" type="redirectAction"> <param name="actionName"> Register?username=${username} </param> </result>
看了下"redirectAction"的实现类ServletActionRedirectResult.java,是这样描述的:
/** * <!-- START SNIPPET: description --> * * This result uses the {@link ActionMapper} provided by the {@link ActionMapperFactory} to redirect the browser to a * URL that invokes the specified action and (optional) namespace. This is better than the {@link ServletRedirectResult} * because it does not require you to encode the URL patterns processed by the {@link ActionMapper} in to your struts.xml * configuration files. This means you can change your URL patterns at any point and your application will still work. * It is strongly recommended that if you are redirecting to another action, you use this result rather than the * standard redirect result. **/
它的意思是建议我使用这种方式来作action的重定向:
<result name="error" type="redirectAction"> <param name="actionName">Register</param> <param name="username">${username}</param> </result> "This means you can change your URL patterns at any point and your application will still work." 显然这句话是Struts2强烈推荐使用的原因,但是不太能理解这句话。
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-02-03
E文我是不懂啦!不过就我使用来看,这两种方法的区别之一是当变量是中文时,是否乱码的问题。
Register.action?username=${username}这种方式要传中文的话应该要设置下编码格式的。。。貌似是xml的东西啦。。。 至于还有没有其它区别!等待高人呢。。。 |
|
返回顶楼 | |
发表时间:2011-02-04
不是xml格式,历史原因,url传的文字最初是只能用iso8859的字符
其它的要用%20这种形式encode一下。 如果是用param标签,struts可以自动encode,而不需要自己写代码encode后传过去。 * because it does not require you to encode the URL patterns processed by the {@link ActionMapper} in to your struts.xml |
|
返回顶楼 | |
发表时间:2011-02-04
原来如此。。。谢过。。。
|
|
返回顶楼 | |