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就消失

原文地址:https://www.cnblogs.com/callyblog/p/7531438.html