struts 2.x
2016-05-14 14:38
375 查看
action与jsp传值
使用ognl表达式(相关讲得很细:http://www.iteye.com/problems/94227)
ValueStack的生命周期与request一样
【 ValueStack贯穿整个Action的生命周期,保存在request域中,所以ValueStack的声明周期和request的生命周期是一样的。当Struts2接受一个请求时,会迅速创建ActionContext、Action、ValueStack,然后把Action存放进ValueStack中,所以Action的实例变量可以被OGNL表达式访问。请求来的时候,Action、ValueStack的生命周期开始,请求结束时,Action、ValueStack的生命周期结束。】
request的生命周期是【对于request的forward,该request的生命周期将会继续延续下去,当采用forward如果到达JSP页面,那么之前从第一个JSP页面中发送出来的request的消息将仍然存在,新的页面同样能够取得该request里所包含的一些信息,比如之前的JSP发送request中所包含的参数信息.事实上,它们是同一个request.
对于request,对request信息的传递,只有setAttribute()这一个方法,该方法将设置一个Object对象到request中.
但是,如果当一个request是从jsp从发出,包含的信息段为param1=test这样的方式,那么只能通过getParameter()得到,getAttribute()是得不到param1的value的.
再次,对于JSP的EL表达式,${}这中方式只能得到setAttribute中的值,因此当从一个JSP发送request到达action并且被forward到新的JSP中时,如果想在该JSP中取得JSP发送时的参数信息需要写为这种形式:${param.patam1}.】
jsp to action
在action之前设置拦截器,在拦截器中做判断,看request中的对象XX,在action中是否存在setXX方法,如果有则赋值。(包括复杂的赋值,有三种,一种是直接赋值,二是对象赋值,三是实现modeldriven接口赋值)
action to jsp
在action返回jsp前,会将action中的对象压到ValueStack堆栈中。
在jsp页面中利用标签写<s:property value="username"/> ,ognl表达式会到ValueStack的堆栈中查找某个对象的值
使用ognl表达式(相关讲得很细:http://www.iteye.com/problems/94227)
ValueStack的生命周期与request一样
【 ValueStack贯穿整个Action的生命周期,保存在request域中,所以ValueStack的声明周期和request的生命周期是一样的。当Struts2接受一个请求时,会迅速创建ActionContext、Action、ValueStack,然后把Action存放进ValueStack中,所以Action的实例变量可以被OGNL表达式访问。请求来的时候,Action、ValueStack的生命周期开始,请求结束时,Action、ValueStack的生命周期结束。】
request的生命周期是【对于request的forward,该request的生命周期将会继续延续下去,当采用forward如果到达JSP页面,那么之前从第一个JSP页面中发送出来的request的消息将仍然存在,新的页面同样能够取得该request里所包含的一些信息,比如之前的JSP发送request中所包含的参数信息.事实上,它们是同一个request.
对于request,对request信息的传递,只有setAttribute()这一个方法,该方法将设置一个Object对象到request中.
但是,如果当一个request是从jsp从发出,包含的信息段为param1=test这样的方式,那么只能通过getParameter()得到,getAttribute()是得不到param1的value的.
再次,对于JSP的EL表达式,${}这中方式只能得到setAttribute中的值,因此当从一个JSP发送request到达action并且被forward到新的JSP中时,如果想在该JSP中取得JSP发送时的参数信息需要写为这种形式:${param.patam1}.】
jsp to action
在action之前设置拦截器,在拦截器中做判断,看request中的对象XX,在action中是否存在setXX方法,如果有则赋值。(包括复杂的赋值,有三种,一种是直接赋值,二是对象赋值,三是实现modeldriven接口赋值)
action to jsp
在action返回jsp前,会将action中的对象压到ValueStack堆栈中。
在jsp页面中利用标签写<s:property value="username"/> ,ognl表达式会到ValueStack的堆栈中查找某个对象的值
相关文章推荐
- Struts - 标签库
- struts1.0于struts2.0的比较
- Struts2中关于namespace的学习心得
- Struts2----自定义action的学习心得
- HTTP Status 404 - There is no Action mapped for namespace [/] and action name [login!welcome] associ
- struts2
- SSH学习笔记---struts2 spring集成时action的class的值
- ssh--问题记录
- 文章标题 使用ajaxFileupload+struts2完成文件的上传以及回显到jsp的链接地址
- struts 学习笔记
- Struts2 的基本配置
- struts2框架架构流程
- struts2.0拦截器(实现未登录的用户不能访问系统的页面)(转)
- Struts2 面试题分析
- Struts2+jQuery+JSON实现异步交互
- 软件开发疑惑解答
- ajax ssh 整合
- 关于struts2框架学习
- struts2 @Action给方法注解
- struts2登陆拦截器