[webwork] 重定向

来源:互联网 发布:java购物车界面代码 编辑:程序博客网 时间:2024/05/16 10:11

相比我们大家对重定向不是很陌生,在sevlet中可以使用如下两种方法重定向:

 产生一个新的HTTP请求的的重定向:

 

带着前一个HTTP请求参数的forward:

那么如何在webwork框架中进行上述两种重定向呢?

 

首先我们来看下第一种重定向:

在webwork 中有两种result 用于第一种的重定向,分别是:

(下面我们把上述 ServletRedirectResult 简称为 redirect ,ServletActionRedirectResult 简称为 redirectAction)

 

那么这两个有什么区别呢?

首先看下 redirect 的源代码(这里只展现执行跳转的代码)

 

这段代码先根据参数拼装URL,然后在sendRedirect 到新的url。

 

首先一点 从类的关系上来看 redirectAction 是继承自 redirect的

接着我们来看下 redirectAction 的源代码,(同样也是展现跳转的源代码)

很明显的可以看出这段代码并没有使用任何servlet的重定向,而是简单的把上个请求的参数通过配置

的取舍加到下个invocation中,去请求了另外一个action

 

所以webwork 官方也建议使用redirectAction ,见 (It is strongly recommended that if you are redirecting to another action, you use this result rather than thestandard redirect result.

webwork 官方关于redirectAction

 

 

关于第二种重定向,webwork中用下面这个类来实现:

 

来看下执行跳转的代码:

 

 

 

 

 

原创粉丝点击