zoukankan      html  css  js  c++  java
  • Struts2中Action各种转发类型

    Struts2:
    Action中result的各种转发类型:

    内部请求转发dispatcher(默认值)
     redirect、redirectAction、plainText
    1.redirect是重定向到某个路径、视图
    <action name="redirect">/***重定向
       <result type="redirect">/employeeAdd.jsp?username=${username}</result>
    </action>
    URLEncoder.encode("传智播客","UTF-8");
    取值解码
    在前台<% = URLDecoder.decode(new String(request.getParameter("username").getBytes("ISO8859-1"),"UTF-8"),"UTF-8") %>

    2.redirectAction是重定向到某个Action
    <action name="redirectAction">
      <resutl type="redirectAction">Action的名称</resutl>
    </action>
    重定向到另一个包下的Action如何?
    <action name="redirectAction">
      <resutl type="redirectAction">
          <param name="actionName">Action名称</param>给源代码的这两个属性注入值
          <param name="namespace">/control/department</param>
      </resutl>
    </action>
    3.plainText适用于查看某个JSP源代码即显示源代码的时候使用
    <action name="plainText">
      <resutl type="plainText">/index.jsp</result>
    </action>
    结果会将整个视图的源代码输出在浏览器上给用户看UTF-8的模式呈现不会说中文乱码
    <action name="plainText">
      <resutl type="plainText">
       <param name="location">/index.jsp</param>
       <param name="charSet">UTF-8</param>
      </result>
    </action>
    4.大多数Action公用的视图配置
    <global-results>
    <result name="message">/WEB-INF/page/message.jsp</result>
    </global-results>
    这段代码放在某个<package></package>代码段中的Action是公用视图外如果想定义全局的话可以
    <package name="base" extends="struts-default">
    </package>
    其它包继承 extentds="base"就OK 各个包中的Action使用公共视图就这样定义全局视图

    -------------------------------------------------------------------------------------------------------------

    为Action的属性注入值
    要实现依赖注入必须提供Set方法
    <struts>
    <package name="itcast" namespace="/control/employee" extends="struts-default">
       <action name="list" class="cn.itcast.action.HelloWorldAction" method="execute">
         <param name="savepath">/images</param>给Action中的savepath属性注入的值
            <result name="success">/WEB-INF/page/message.jsp</result>
       </action>
    </package>
    </struts>

    1. <?xml version="1.0" encoding="UTF-8"?>  
    2.  <!DOCTYPE struts PUBLIC    
    3.     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"   
    4.     "http://struts.apache.org/dtds/struts-2.0.dtd">  
    5.     <struts>  
    6.     <constant name="struts.action.extension" value="lp" />  
    7.     <package name="login" namespace="/" extends="struts-default">  
    8.     <action name="login" class="myclass.struts2.action.LoginAction">     
    9.      <!--使用重定向的跳转方式 -->  
    10.     <result name="succ" type="redirectAction">  
    11.     <!-- 不同包action的访问   
    12.     <param name="actionName">logout</param>  
    13.      -->  
    14.     <!--不同包action的访问并传值方法一    
    15.     <param name="actionName">logout?username=${username}&userpassword=${userpassword}</param>  
    16.      -->  
    17.      <!--不同包action的访问并传值方法二 -->  
    18.      <param name="actionName">logout</param>  
    19.      <param name="username">${username}</param>  
    20.      <param name="userpassword">${userpassword}</param>  
    21.     <param name="namespace">/logout</param>  
    22.     </result>  
    23.     <result name="fail">/failure.jsp</result>  
    24.     </action>  
    25.     </package>  
    26.     <package name="logout" namespace="/logout" extends="struts-default">  
    27.     <action name="logout" class="myclass.struts2.action.LogoutAction">    
    28.     <result name="exit">/exit.jsp</result>  
    29.     </action>  
    30.     </package>  
    31.     </struts>  
  • 相关阅读:
    Java基础面试操作题: 线程问题,写一个死锁(原理:只有互相都等待对方放弃资源才会产生死锁)
    Java基础面试操作题: File IO 文件过滤器FileFilter 练习 把一个文件夹下的.java文件复制到另一个文件夹下的.txt文件
    Java基础面试操作题:Java代理工厂设计模式 ProxyFactory 有一个Baby类,有Cry行为,Baby可以配一个保姆 但是作为保姆必须遵守保姆协议:能够处理Baby类Cry的行为,如喂奶、哄睡觉。
    Java中 Character方法练习:字符串中英文字母个数 5435abc54abc3AHJ5 正则:matches("[a-zA-Z0-9]{1}")
    Java 练习:字符串反转
    集合类别
    JAVA 后台
    micro focus cobol vs mainframe cobol
    Java 编码
    关于java中char占几个字节,汉字占几个字节
  • 原文地址:https://www.cnblogs.com/564085446java/p/3732024.html
Copyright © 2011-2022 走看看