008--Struts2中结果页面(Result)的配置

strust.xml文件中,Result的配置非常简单,使用元素来配置Result逻辑视图和物理视图之间的映射,元素中有nametype两个属性,但都不是必须的。

  • name属性:指定逻辑视图的名称,默认为success
  • type属性:指定返回的视图资源的类型,不同的类型代表不同的输出结果,默认为dispatcher

在结果页面的配置中,Struts2有两种配置方式,分别为全局结果页面配置和局部结果页面配置。

  • 全局结果:这个包下的所有返回相同字符串的值,都可以向这个页面进行跳转
  • 局部结果:指在某个Action中返回的字符串的值,会向这个页面跳转

全局结果页面

指在同一个包下面配置的Action中返回相同字符串值,都可以跳转到这个页面,需要通过进行配置。


     success.jsp

局部结果页面

指在某个Action中根据该字符串的值进行页面跳转,只对这个Action有效。


       success.jsp

常见ResultType

在Struts2中,当框架调用Action对请求进行处理后,一般需要向用户呈现一个结果视图。Struts2预定义了多种ResultType,其实就是定义了多种展示结果的技术。

一个结果类型就是实现了com.opensymphony.xwork2.Result接口的类,Struts2把内置的都放在struts-default包中,struts-default包就是配置包的父包,这个包定义在struts2-core-2.3.24.jar包中的根目录下的struts-default.xml文件中,可以找到相关的的定义。

每个元素都是一种视图技术或跳转方式的封装,其中name属性指出在元素中如何引用这种视图技术或跳转方式,对应着元素的type属性。在Struts2中预定于的ResultType如下所示:

属性 说明
chain 用来处理Action链,被跳转的Action中仍能获取上个页面的值,如request信息
dispatcher 用来转向页面,通常处理JSP,默认结果类型
redirect 重定向到一个URL,被跳转的页面中丢失传递的信息
redirectAction 重定向到一个Action,跳转的页面中丢失传递的信息
freemarker 用来整合FreeMarker模板结果类型
httpheader 用来处理特殊的HTTP行为结果类型
stream 向浏览器发送InputStream对象,通常用拉埃处理文件下载,还可用于Ajax数据
velocity 用来整合Velocity模板结果类型
xslt 用来整合XML/XSLT模板结果类型
plainText 显示原始内容,例如文件源代码
postback 使得当前请求参数以表单形式提交

其中前四个,使用相对较多,后面的了解即可。

Result相关配置就简单介绍到这了。

你可能感兴趣的:(008--Struts2中结果页面(Result)的配置)