Struts2 ongl内存结构
valuestack是OgnlValueStack的实现,而OgnlValueStack是基于ValueStack的实现
valuestack的内存结构为:
里面主要的为:context和root
root的内存结构为:
CompoundRoot是基于ArrayList的实现,所以说CompoundRoot是继承ArrayList实现的一个栈结构
context的内存结构为:
里面存放了_root和_values,_root和前面所述的root是相等的,而_values中的结构为:map,里面封装的信息为:
总结:
1、对象栈的内容和context的_root属性是一样的
2、客户端请求的action出现在对象栈、_root、_values中
3、_values封装了application,session,reuqest,parameters域
4、当action创建的时候,valueStack就创建了。当action消失的时候,valueStack就消失