`
miracle9i
  • 浏览: 34636 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

Struts2的result

阅读更多
两种结果:[list=1]
  • 局部结果
  • <action name="actionName" class="package.ActionName">
    			<result name="逻辑视图名" type="视图结果类型"/>
    				<param name="参数名">参数值</param>
    				name属性可以为以下两个值:
    					·location:参数指定逻辑视图
    					·parse:是否允许在实际视图名中使用OGNL表达式。参数默认为true;
    				实际上通常不需要明确写这个param标签,而是直接在<result></result>中指定物理视图位置
    			</result>
    			属性细节:
    				name:逻辑视图名,若无指定,默认为success
    				type:指定视图结果类型,默认为dispatcher(即jsp),可以通过对参数的修改改变默认视图结果类型
    </action>
    
  • 全局结果:
  • 对包内所有的Action都有效的全局结果
    <global-results>
        <result name="resultName">具体视图位置</result>
    </global-results>
    

    [/list]
    视图结果类型
    在struts2-core-2.0.11.2.jar根目录下的struts-default.xml中配置了struts2提供的一系列结果类型
    struts2的结果类型实现了com.opensymphony.xwork2.Result接口
    type支持的结果类型:
    • * chain:用来处理Action链
    • chart:整合JFreeChart的结果类型
    • * dispatcher:用来转向页面,通常处理JSP
    • * freemaker:处理FreeMarker模板
    • httpheader:控制特殊HTTP行为的结果类型
    • jasper:用于JasperReports整合的结果类型
    • jsf:JSF整合的结果类型
    • * redirect:重定向到一个URL
    • * redirect-action:重定向到一个Action
    • stream:向浏览器发送InputSream对象,通常用来处理文件下载,还可用于返回AJAX数据
    • tiles:与Tiles整合的结果类型
    • velocity:处理Velocity模板
    • xslt:处理XML/XLST模板
    • plaintext:显示原始文件内容,例如文件源代码

    几个需要注意的结果类型:
    [list=1]
  • plaintext结果类型
  • 直接在页面上显示源代码
    可以为其设置编码
    <result name="err" type="plaintext">
    			<param name="location">具体的位置</param>
    			<param name="charSet">字符规范(如GBK)</param>
    </result>
  • redirect结果类型
  • 将请求重定向到指定的视图资源,将会丢失所有的请求参数、请求熟悉及Action的处理结果
    <result name="err" type="redirect">具体的位置</result>
    
  • redirect-action结果类型
  • 使用ActionMapperFactory提供的ActionMapper来重定向请求
    <result name="err" type="redirect-action">
    			<param name="actionName">重定向的Action名</param>
    			<param name="namespace">重定向Action所在的名字空间</param>
    </result>

    感觉redirect和redirect-action两种结果类型在使用上其是并没有什么区别,只是写法不同而已。
    注意:结果类型的参数上,都可以使用表达式来决定视图位置或附带参数。
    [/list]
    分享到:
    评论

    相关推荐

    Global site tag (gtag.js) - Google Analytics