zoukankan      html  css  js  c++  java
  • java_Struts2在Action中result的四种转发类型

    部分内容是网上转载的,自己整合了一下

    在struts2中为result提供了多种类型,常用的类型有:dispatcher(默认),redirect,redirectAction,plainText。

    在result中还可以使用${属性名}访问action中的属性,表达式中的属性名对应action中的属性。

    <resulttype="redirect">/index.jsp?id=${id}</result> 

    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中在同一个package下:

    <result type="redirectAction">helloworld</result>  

    如果重定向的action在别的package下:

    <result type="redirectAction">              
        <param name="namespace">/login</param>  
        <param name="actionName">list</param></result> 

    3.当需要显示文件内容,比如:原样显示jsp文件源代码时就用plainText

    <result name="source" type="plainText">  
            <param name="location">/index.jsp</param>  
            <!-- 指定读取文件的编码 -->  
            <param name="charSet">UTF-8</param>  
    </result> 

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

    为Action的属性注入值
    要实现依赖注入必须提供Set方法

    <package name="itcast" namespace="/control/employee"  extends="struts-default">
       <action name="list" class="cn.itcast.action.HelloWorldAction" method="execute">
       <!--给Action中的savepath属性注入的值  -->
    <param name="savepath">/images</param>
    <result name="success">/WEB-INF/page/message.jsp</result> </action> </package>

    全局视图的
    这段代码放在某个<package></package>代码段中的Action是公用视图外如果想定义全局的话可以

    <package name="base" extends="struts-default">
      <global-results>
        <result name="message">/WEB-INF/page/message.jsp</result>
       </global-results>
    </package>

    其它包继承 extentds="base"就OK 各个包中的Action使用公共视图就这样定义全局视图

  • 相关阅读:
    SSH框架(一)Hibernate
    我要创业啦(基于MVC的在线教育系统)
    面向对象语言高并发技术数据库部分(一)----MyCat做MySQL负载均衡(享学课堂,咕泡学院听课笔记)
    数据库优化MySQL数据库性能优化(享学课堂听课笔记)
    系统集成项目管理工程师考试(经历)
    CSND使用(一直在学习)
    仓央嘉措不负如来不负卿
    Java与.net的选择和比较
    .Net编程之Web Service 和WCF的历史和特性
    .Net项目之分享自己的MVC+angularjs项目经历
  • 原文地址:https://www.cnblogs.com/hwj2wj/p/2824778.html
Copyright © 2011-2022 走看看