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

strust.xml文件中,Result的配置非常简单,使用<result>元素来配置Result逻辑视图和物理视图之间的映射,<result>元素中有nametype两个属性,但都不是必须的。
- name属性:指定逻辑视图的名称,默认为success
- type属性:指定返回的视图资源的类型,不同的类型代表不同的输出结果,默认为dispatcher

在结果页面的配置中,Struts2有两种配置方式,分别为全局结果页面配置和局部结果页面配置。
- 全局结果:这个包下的所有返回相同字符串的值,都可以向这个页面进行跳转
- 局部结果:指在某个Action中返回的字符串的值,会向这个页面跳转

全局结果页面

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

<global-results>
     <result name="success">success.jsp</result>
</global-results>

局部结果页面

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

<action name="test" class="com.happ.demo.result.ResultDemo1Action" method="execute">
       <result name="success" type="dispatcher">success.jsp</result>
</action>

常见ResultType

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

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

每个<result-type>元素都是一种视图技术或跳转方式的封装,其中name属性指出在<result>元素中如何引用这种视图技术或跳转方式,对应着<result>元素的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相关配置就简单介绍到这了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值