实际上在Struts2框架中,一个完整的结果视图配置文件应该是:
1
2
3
4
5
|
< action name="Action名称" class="Action类路径" method="方法名"> < result name="逻辑视图名称" type="结果类型"> < param name="参数名称">参数值</ param > </ result > </ action > |
结果类型的作用
返回类型在Struts2框架下的struts-default.xml中可以找到所支持的结果类型.
常用的有3种:
1、请求转发(dispatcher)
这是Struts2的默认结果类型。
- 请求转发只能请求转发至同一个web应用。
- 利用请求转发浏览器地址栏不会发生变化。
- 利用请求转发调用者与被调用者之间共享相同的request对象和response对象,他们属于同一个访问请求和响应。
2、重定向(redirect)
- 重定向不仅可以指定到一个web应用,还能够制定到任何JSP资源。
- 重定向的访问结束后,浏览器的地址栏中显示URL变化。
- 重定向的调用者与被调用者使用各自的的request对象和response对象,他们属于两个独立的访问请求和响应过程。
重定向之后会丢失前一次访问的数据信息。
3、Action链(chain)
Action链是通过一个chain的拦截器实现的。
第一个Action执行成功后有chain拦截器负责发出第二个Action的请求,Action链中所有Action都共享一个值栈,当执行Action的时候,会将自身的数据全部压入值栈。