result 标签配置
在使用 Struts2 时,我们通常在 Action 中返回一个逻辑视图结果,这个结果实际上是一个字符串,该字符串与配置中 result
标签的 name
属性对应。 result
标签用于配置页面的跳转,它的使用方式如下:
属性:
name
:逻辑视图名称,与 action 返回值对应。type
:页面跳转类型。
type
的取值有很多,在 struts2-core-2.3.37.jar!/struts-default.xml
的 package
下有定义:
// struts-default.xml > package > result-types
<result-types>
<result-type name="chain" class="com.opensymphony.xwork2.ActionChainResult"/>
<result-type name="dispatcher" class="org.apache.struts2.dispatcher.ServletDispatcherResult" default="true"/>
<result-type name="freemarker" class="org.apache.struts2.views.freemarker.FreemarkerResult"/>
<result-type name="httpheader" class="org.apache.struts2.dispatcher.HttpHeaderResult"/>
<result-type name="redirect" class="org.apache.struts2.dispatcher.ServletRedirectResult"/>
<result-type name="redirectAction" class="org.apache.struts2.dispatcher.ServletActionRedirectResult"/>
<result-type name="stream" class="org.apache.struts2.dispatcher.StreamResult"/>
<result-type name="velocity" class="org.apache.struts2.dispatcher.VelocityResult"/>
<result-type name="xslt" class="org.apache.struts2.views.xslt.XSLTResult"/>
<result-type name="plainText" class="org.apache.struts2.dispatcher.PlainTextResult" />
<result-type name="postback" class="org.apache.struts2.dispatcher.PostbackResult" />
</result-types>
常用类型有如下几个:
dispatcher
:默认值,请求转发,从 当前 action 到 jsp。redirect
:从当前 action 重定向到 jsp。chain
:请求转发,从当前 action 转发到另一个 action。redirectAction
:从当前 action 重定向到另一个 action。stream
:返回流,文件下载
全局结果页配置
全局结果页指的是在包中配置一次,其它在这个包中所有 action 只要返回了对应 name
值,就都可以跳转到全局结果页配置的页面。
在 struts.xml
的 package
标签下添加如下节点即可配置全局结果页:
<!--全局结果页配置-->
<global-results>
<result name="success">/success.jsp</result>
</global-results>
局部结果页配置
局部结果页指的是所配置的结果只对当前所在 action 有效。
在 struts.xml
的 package>aciton
下配置:
<!--局部结果页配置-->
<action name="*" class="com.zze.action.{1}Action">
<result>/show.jsp</result>
</action>
评论区