1,在 Action中我们经常会从这个Action跳转到另一个Action中,这时我们就要用到redirect、redirect-action、chain,

其中redirect和redirect-action是重定向,相当于浏览器二次请求,之前的数据都会丢失,所有的参数、值栈和请求属性都会丢失。chain是服务器转发action,源Action的用户请求参数、值栈、session的数据赋值给目的Action,即在目的action中可以获得源action得到的请求参数值栈,session等数据。

当我们想在这两个action之间传递参数时:

a,使用链接加“?”的方式。如果想在请求的过程中添加参数可以像超链接传值一样在最后用"xx?xx=xx" 的形式来传递参数.

如:

<result name="reload" type="redirectAction">/manager/ managerInfo/account.action?参数名=参数值</result>,

如果这里的参数值不是一个固定值可以用"${参 数值}"这种OGNL表达式的形式获取,注意:这里的"参数值"在相应的Action中一定要提供get/set方法,否则将无法获得参数值,当然这里也同样可以取一个 对象的某个属性值即:${对象名.属性名},符合ONGL表达式访问规则,之前写过着方面的文章。

b,使用子元素的形式。

<span style="background-color: rgb(255, 255, 255);"><action name="action1" method="" class=""><result name="success" type="chain"><param name="actionName">action2</param><param name="param1">${param1}</param><param name="param2">${param2}</param></result>
</action>   </span>

注意:
1. 若param1和param2是两个变量, 那么在两个action中都要有他们的getter和setter
2. 若param1是常量,那么在action1中只要有一个param1的getter,在action2中要有param1的getter和setter

如果在两个action之间直接跳转而不用传参数,struts.xml文件可以和上面一样,只是没有param标签,还可以使用如下配置:

<action name="action1" method="" class=""><result name="success" type="redirectAction">action2.action</result>
</action>

即可

2,struts2 action 向jsp页面传递参数问题

   a,在jsp页面可以使用ONGL表达式访问action中的值栈等

   b,可以使用request.setAttribute("key","value");session.setAttribute("key","value");在相应的jsp页面上可以使用OGNL表达式“#request.key”“#session.key”获取值。


struts2中action向action之间传数据和action向jsp传数据理解相关推荐

  1. Struts2中OGNL,valueStack,stackContext的学习

    http://jwx0925.iteye.com/blog/630335 [/color]学习Struts2,一直不明白表单中的值是怎么传给Action的,上网查了些资料,基本了解了!下面基本是从几个 ...

  2. 在Struts2中使用OGNL

    OGNL是XWork引入的一个非常有效的数据处理的工具.我们已经了解了OGNL的基本操作和OGNL的内部结构,接下来,我们来看看XWork对OGNL做了什么样的加强,以及OGNL的体系在Struts2 ...

  3. Struts2中的链接标签

    摘自:http://www.java3z.com/cwbwebhome/article/article2/21001.html 为了使从一个页面中链接一个动态数据变得简单,Struts2框架提供了一系 ...

  4. Struts2中带参数的结果集

    1.在Struts2中带参数的结果集,即向结果集传参.struts2中有转发和重定向到某个视图,其中转发的过程在服务端完成,这个过程共享一个value stack(值栈),客户端并不知道页面跳转到了哪 ...

  5. Struts2中的链接标签 s:url和s:a

    2011-08-03 11:05:56|  分类:java web |  标签: |字号大中小  订阅 普通链接 Web程序中最普通的应用是链接到其他页面,下面看Welcome.jsp. <%@ ...

  6. Struts2中的struts.multipart.saveDir的配置

    Struts2中的struts.multipart.saveDir的配置 Struts2中的struts.multipart.saveDir主要是用来设置上传文件的临时存放地址,而这个参数设置方法的不 ...

  7. Struts2中的action类

    Struts2中的action类 action类在Struts2中承担了Model(模型)的角色,主要用于处理业务逻辑并存放HTTP请求处理过程中各个变量的值. 在Struts2里面,Action充当 ...

  8. Struts2中的Action

    多数的MVC框架中的Control层,都是一个Java对象.按照惯例,我们通常会把这个层次上面的Java对象统称为Action层.本篇文章,我们就来简单介绍一下Struts2中Action的相关内容. ...

  9. Struts2中action接收参数的三种方法及ModelDriven跟Preparable接口结合JAVA反射机制的灵活用法...

    Struts2中action接收参数的三种方法及ModelDriven跟Preparable接口结合JAVA反射机制的灵活用法 www.MyException.Cn   发布于:2012-09-15 ...

最新文章

  1. 如果重新一次高考,你还会选择软件专业当程序员吗? | 每日趣闻
  2. 认识微软Visual Studio Tools for AI
  3. Android短信发送流程之长短信发送(原)
  4. Linux Shell下”/dev/null 21“相关知识说明
  5. java生成不重复随机数_生成不重复随机数 java
  6. 如何有效的保护计算机,如何保护计算机-20210717095143.pdf-原创力文档
  7. ffmpeg转MP4 moov头在前命令
  8. 【ZookeeperDubbo系列二】Zookeeper+Dubbo集群安装配置详解
  9. 公开密匙(public key)和专用密匙(private key)
  10. git推送拉取需要验证信息
  11. 多传感器融合方式分析
  12. python-onvif实现客户端控制相机云台
  13. 数据结构1 - 向量
  14. viper4android小米活塞,打造小米手机终极HIFI 有效提升小米手机音质
  15. 计算机技术水平考核试卷带答案,中小学教师计算机技术水平考核试卷笔试题带答案...
  16. php 两种递归方法
  17. Lifecycle使用及原理讲解
  18. 读《富兰克林传 绪》有感
  19. Django基础之MVT
  20. MySQL21个表设计的经验准则(上)

热门文章

  1. Generic Access Profile (GAP)
  2. cdev_alloc和cdev_init 的使用
  3. cmake (2)其他指令
  4. EOS开发步骤(2) 钱包操作
  5. (chap7 确保WEB安全的HTTPS) HTTP通信问题
  6. 区块链预言机(4)内在机制
  7. Hyperledger Fabric 管道(2) 管道的操作
  8. 初等数论--整除--两数乘积保持整除性
  9. 数学建模——TOPSIS综合评价模型Python代码
  10. linux kernel同步方法的总结