`
akunamotata
  • 浏览: 378885 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

关于Struts2的action重定向

阅读更多

"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强烈推荐使用的原因,但是不太能理解这句话。

 

 

分享到:
评论
3 楼 akunamotata 2011-02-04  
原来如此。。。谢过。。。
2 楼 dwangel 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
1 楼 yjl6691088 2011-02-03  
E文我是不懂啦!不过就我使用来看,这两种方法的区别之一是当变量是中文时,是否乱码的问题。
Register.action?username=${username}这种方式要传中文的话应该要设置下编码格式的。。。貌似是xml的东西啦。。。
至于还有没有其它区别!等待高人呢。。。

相关推荐

    struts2 重定向

    总结来说,Struts2中的重定向是一种重要的URL导航技术,可以通过多种方式实现,包括`ActionRedirect`对象、`Results`配置、`ActionSupport`的`redirect()`方法和注解方式。理解并熟练掌握这些方法,对于开发高质量的...

    struts2重定向实例源码

    在Struts2中,Action的执行结果可以被导向到不同的视图,这其中包括了"redirect"和"redirectAction"两种重定向结果类型。这两种结果类型在实际应用中有着重要的作用,特别是对于处理URL重写、防止重复提交等问题。 ...

    一个基于struts的重定向和转发实例

    2. 表单数据被发送到服务器,Struts框架根据配置解析请求并调用相应的Action。 3. Action验证用户输入,如果验证成功,它会根据需求决定是使用`execute()`方法的返回值(可能是"success",映射到重定向或转发的目标...

    struts2 action跳转action传参数

    ### Struts2中Action间的参数传递方法 在Struts2框架中,经常需要实现Action之间的跳转,并在跳转过程中传递必要的参数。这种需求在实际开发中非常常见,尤其是在需要根据用户的不同操作来调用不同的业务逻辑时。...

    struts2防止表单重复提交--重定向

    Struts2提供了多种方法来防止这种情况,其中一种是通过重定向来实现。下面将详细解释Struts2如何通过重定向来防止表单重复提交。 首先,理解表单重复提交的场景:用户在提交表单后,由于网络延迟或其他原因,可能会...

    struts2 Https 配置

    2. **Struts2配置**:在Struts2的应用中,我们需要确保Action请求被重定向到HTTPS。这可以通过在`struts.xml`配置文件中使用`&lt;constant&gt;`标签设置`struts.action.excludePattern`属性来实现。 ```xml ...

    struts2 result转向到action

    ### Struts2 Result 转向到 Action 的深入解析 #### 一、基本概念与应用场景 **Struts2** 是一款流行的 Java Web 开发框架,它支持多种开发模式(如 MVC),并提供了一系列用于简化 Web 应用程序开发的功能。在 ...

    Struts2 in action中文版+配套源代码

    "Struts2 in Action" 是一本深入探讨Struts2框架的专业书籍,旨在帮助开发者掌握这一框架的核心概念和实践技巧。这本书的中文版不仅提供了理论知识,还附带有配套的源代码,方便读者进行实践操作,加深理解。 ...

    Struts2 in action 中文版

    《Struts2 in Action》中文版是一本深入探讨Struts2框架的专业书籍,该书不仅提供了详尽的理论知识,还包含了大量的实战案例,对于希望掌握Struts2框架的开发者来说,是一本不可或缺的参考书。 ### Struts2框架概览...

    Struts2InAction中文+源代码

    《Struts2 in Action》是一本深入探讨Struts2框架的权威著作,中文版的发布使得更多的中国开发者能够轻松理解并掌握这一强大的MVC框架。这本书不仅提供了理论知识,还结合了实际应用,通过SampleApplication的源代码...

    Struts2接口文档

    这个“Struts2接口文档”是开发者的重要参考资料,提供了关于Struts2框架内各个组件、类库以及接口的详细说明,帮助开发者深入理解框架的内部工作原理并有效地使用其功能。 Struts2的核心组件包括Action、Result、...

    留言板留言板struts2留言板struts2

    以上就是关于"留言板留言板struts2"项目可能涉及的Struts2相关知识点。这个项目可能包含了Action编写、视图渲染、用户交互、数据验证等基本功能,是学习和理解Struts2框架的一个很好的实践案例。通过分析和运行这个...

    Struts 2使用注解配置Action

    在传统的Struts 2应用中,我们通常会通过XML配置文件(struts.xml)来定义Action,包括Action类、结果页面、拦截器等信息。然而,随着Java注解的广泛应用,Struts 2也引入了注解配置的方式来简化开发过程,避免了XML...

    Struts2框架及注释和用法

    在"使用文档.txt"中,你可能会找到更多关于如何配置Struts2、编写Action、设置拦截器、进行字段验证等的具体步骤和示例代码。而"Struts2"文件可能是包含示例项目或库的压缩包,供学习和参考。结合这两个资源,你可以...

    基于用户登陆的struts2中action的分类实例

    在Struts2中,Action是核心组件之一,它负责处理用户的请求,并将业务逻辑的结果返回给视图进行展示。本实例将深入探讨在基于用户登录场景下,如何在Struts2中对Action进行分类和设计。 首先,我们需要了解Struts2...

    Struts2视频教程

    - **Action类详解**:Action类是Struts2的核心组件之一,负责处理用户的请求并返回相应的结果。了解如何编写Action类、设置其属性以及处理请求参数至关重要。 - **Result配置**:Result用于指定Action执行后的结果...

    Struts2 Struts2 超好的Struts2 pdf 文档

    这个“超好的Struts2 pdf 文档”很可能包含了关于Struts2的全面介绍、核心概念、配置、拦截器、结果类型、动作类、插件、以及最佳实践等内容。 Struts2的核心概念主要包括以下几个方面: 1. **Action**:在Struts2...

    struts2 ,struts2 demo

    Struts2支持多种结果类型,如dispatcher(转发到JSP)、stream(下载文件)、redirect(重定向)。结果配置可以根据Action执行的结果(success、error等)决定跳转到哪个视图。 在提供的“struts2 demo”压缩包中,...

    struts2 action 配置方法 &&struts2的配置文件

    Struts2是一个强大的MVC框架,它在设计上吸收了XWork的核心机制,尤其是在Action的处理上。Action是Struts2中的核心组件,它负责处理用户的请求并执行业务逻辑。在Struts2中,Action类需要实现`...

    ·Struts2配置文件介绍 超级详细

    - **struts.xml**:这是Struts2框架的核心配置文件,定义了应用程序中的Action映射、结果类型以及拦截器等关键配置信息。它主要包含以下几个元素: - `package`:表示一个包,其中可以包含多个Action。 - `action`...

Global site tag (gtag.js) - Google Analytics