软件下载 > 开发工具 > Java软件 > Struts2使用技巧 > 了解struts2中值栈

了解struts2中值栈

软件分类:Java软件大小:69.8 MB时间:2023-06-21
软件介绍:struts2并不是一个陌生的web框架,它是以Webwork的设计思想为核心,吸收struts1的优点,可以说struts2是struts1和Webwork结合的产物。

在struts2里,值栈包含两个逻辑部分。其一为ObjectStack,它将Action及其相关内容压入Object;其二是ContextMap类型,此类型把各类映射关系压入ContextMap,而这实际上是对Action的一种引用。

1、 在项目里打开struts2 - core - 2.3.15.3.jar包下org.apache.struts2.dispatcher.ng包中的StrutsReuestWrapper.class文件,这个文件是被用于对struts2重新定义ServletContext的。

了解struts2中值栈了解struts2中值栈了解struts2中值栈

2、 在StrutsRequestWrapper里,Struts2重新定义了一个值栈的getAttrbute方法,传入一个值后,对这个值是否为空进行判断。

了解struts2中值栈

3、 在key不为空时,并且!this.disableRequestAttributeValueStackLookup(禁止请求属性值栈查找为否)以及!key.startsWith(javax.servlet)(key不以javax.servlet开头)的情况下,定义一个ActionContext对象,通过该对象获取当前ActionContext里的所有对象属性。

了解struts2中值栈

4、 接着判断actionContext对象是否为空,若为空,则利用__requestWrapper.getAttribute获取struts2中的默认值;若不为空,就通过ActionContext.getValueStack获取值栈,最后将key值放入值栈,以供调用者获取。

了解struts2中值栈

文章标题:了解struts2中值栈

文章链接://www.hpwebtech.com/jiqiao/330246.html

为给用户提供更多有价值信息,ZOL下载站整理发布,如果有侵权请联系删除,转载请保留出处。

其他类似技巧

更多相关技巧»

Struts2软件简介

软件基础简介Struts2是一个基于MVC设计模式的Web应用框架,Struts 2是Struts的下一代产品,是在struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。我们可以直接通过Struts2完整版来建立模型,同时还可以用来进行视图的数据交互。Struts2漏洞利用工具下载Struts2漏洞检查工具2018版(S2-045/S2-057)v2.0最新... 详细介绍»