值栈
来源:互联网 发布:fastboot刷zip软件 编辑:程序博客网 时间:2024/06/16 13:24
1.用户在提交一个Action请求后,系统会马上创建两个对象:Action实例和值栈对象(ValueStack),值栈用于存放请求线程运行所需要的数据,其生命周期与请求线程相同,值栈对象包括以下属性:
Application Session Request Value stack(root) Action Parameters Attribute前三个属于Map类型,存储的是application,session,request中属性Value stack是狭义的值栈,为了和ValueStack区分,我们称为root,是OGNL访问的根Action是当前action的运行空间Parameters是请求中的参数Acttribute在所有的属性范围内获取属性值,依次搜索page Request Session applcation
2.struts2中的ValueStack是一个接口,其实现类为OgnlValueStack,其数据结构类型为arraylist,但是操作方法已经被封装为堆栈的操作模式,顶部取顶部存,用户可以直接访问值栈中的数据(隐式访问),也可显式访问值栈中的数据(拦截器编程时使用)
3.值栈的工作方式,当struts2接收到一个.action请求后
先建立Action的实例对象,但是并不会调用execute方法,而是先将Action类的相应属性放到ValueStack对象的顶层节点,所有的属性值都是默认值struts2依次调用拦截器链中所有的拦截器拦截器链中拦截器会截获用户请求参数,并存入值栈调用Action类的方法,在调用execute方法前,会将ValueStack对象顶层节点中的值赋给Action类中的相应属性
0 0
- 值栈
- 值栈
- 值栈
- 值栈
- 值栈
- 值栈
- struts2 值栈
- struts2值栈
- struts2 值栈
- 值栈 OGNL
- Struts2_值栈
- Struts2《值栈》
- struts2值栈
- Struts2 值栈
- Struts2 值栈
- ValueStack(值栈)
- Struts2值栈
- struts2:值栈
- GITC 2017全球互联网技术大会 上海站早鸟票报名
- iOS自定义控件教程(二)关于响应链的那些事
- 南阳理工oj-5 Binary String Matching
- 大数据挖掘的本质和意义
- hdu 2896 病毒入侵 AC自动机
- 值栈
- MTK平台SD热插拔相关设置以及问题解决
- iOS自定义控件教程(三)UIView动画入门
- 23种设计模式之工厂方法模式
- linux多文件,多目录的嵌套编译
- iOS自定义控件教程(四)UIControl - 幕后的英雄
- 数据库中TIMESTAMP , DATE 和 DATETIME
- LeetCode_91、120两题(动态规划)
- 人工智能中医