zoukankan      html  css  js  c++  java
  • struts2.xml 中result type属性说明

    chain   
      
        用来处理Action链,被跳转的action中仍能获取上个页面的值,如request信息。    
       
        com.opensymphony.xwork2.ActionChainResult   
      
    dispatcher   
      
        用来转向页面,通常处理JSP   
      
        org.apache.struts2.dispatcher.ServletDispatcherResult   
      
    freemaker
       
      
        处理FreeMarker模板   
      
        org.apache.struts2.views.freemarker.FreemarkerResult   
      
    httpheader   
      
        控制特殊HTTP行为的结果类型   
      
        org.apache.struts2.dispatcher.HttpHeaderResult    
      

    stream   
      
        向浏览器发送InputSream对象,通常用来处理文件下载,还可用于返回AJAX数据   
      
        org.apache.struts2.dispatcher.StreamResult   
      
    velocity   
      
        处理Velocity模板   
      
        org.apache.struts2.dispatcher.VelocityResult   
      
    xslt   
      
        处理XML/XLST模板   
      
        org.apache.struts2.views.xslt.XSLTResult   
      
    plainText   
      
        显示原始文件内容,例如文件源代码   
      
        org.apache.struts2.dispatcher.PlainTextResult   
      
     
    plaintext   
      
        显示原始文件内容,例如文件源代码   
      
        org.apache.struts2.dispatcher.PlainTextResult 

    redirect   
      
        重定向到一个URL ,被跳转的页面中丢失传递的信息,如request  
      
        org.apache.struts2.dispatcher.ServletRedirectResult   
      
    redirectAction
       
      
        重定向到一个Action ,跳转的页面中丢失传递的信息,如request      
       
        org.apache.struts2.dispatcher.ServletActionRedirectResult   
      
    redirect-action   
      
        重定向到一个Action ,跳转的页面中丢失传递的信息,如request      
       
        org.apache.struts2.dispatcher.ServletActionRedirectResult 

      
    注:redirect与redirect-action区别

    一、使用redirect需要后缀名 使用redirect-action不需要后缀名
    二、type="redirect" 的值可以转到其它命名空间下的action,而redirect-action只能转到同一命名空下的 action,因此它可以省略.action的后缀直接写action的名称。

    如:

    <result name="success" type="redirect">viewTask.action</result>
    <result name="success" type="redirect-action">viewTask</result>

    附:redirect-action 传递参数

     
    1. <action name="enterpreinfo" class="preinfoBusinessAction"    method="enterPreinfoSub">  
    2.   <result name="success" type="redirect-action">  
    3.      showpreinfo?preinfo.order_number=${preinfo.order_number}&amp;preinfo.company_name=${preinfo.company_name}   
    4.   </result>  
    5.  <result name="error" type="redirect">  
    6.     <param name="location">/error.jsp</param>  
    7.  </result>  
    8. </action>  

       因为使用了redirect-action,所以要注意不能将 showpreinf?preinfo.order_number=${preinfo.order_number}写成 showpreinf.action?preinfo.order_number=${preinfo.order_number}

    其中${}为EL表达式,获取action:enterpreinfo中属性的值;在这个配置文件里,多个参数的连接符使用了"&amp;",但XML的语法规范,应该使用"&amp;"代替"&",原理和HTML中的转义相同,开始没有注意,在struts分析配置文件时,总是报出这样的错误:

    json   一般很容易忽略的一个地方(在EXT中非常有用)
    示例
    1. <package name="struts2" extends="json-default" namespace="/">  
    2.         <action name="login" class="loginAction" method="login">  
    3.             <result type="json">  
    4.                 <param name="includeProperties">success,result</param>                
    5.             </result>               
    6.         </action>  
    7.         <action name="main" class="loginAction" method="main">  
    8.             <result name="main">/index.jsp</result>           
    9.         </action>   
    10.     </package>  
    1. private boolean success  = true;  
    2. private String result = "main.action";  
    3. //getter和setter方法略  
    以上的success和result互相对应到了
    1. <param name="includeProperties">success,result</param>    
    struts2会根据其设置的值匹配跳转
    对于json一般情况下很少用到,但是在处理ext的时候会用到这个属性类型,这个地方也是经常被忽略的。
  • 相关阅读:
    004-ant design -dispatch、request、fetch
    003-and design-dva.js 知识导图-02-Reducer,Effect,Subscription,Router,dva配置,工具
    002-and design-dva.js 知识导图-01JavaScript 语言,React Component
    003-and design-在create-react-app项目中使用antd
    002-and design-基于dva的基本项目搭建
    001-ant design安装及快速入门【基于纯antd的基本项目搭建】
    103-advanced-上下文
    102-advanced-代码分割
    101-advanced-React易用性,概述
    007-spring cache-缓存实现-02-springboot ehcahe2、ehcache3实现、springboot caffeine实现
  • 原文地址:https://www.cnblogs.com/hanxf/p/4582748.html
Copyright © 2011-2022 走看看