且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

struts2学习笔记--ActionContext对象

更新时间:2022-06-21 02:35:28

  • 什么是ActionContext?

    ActionContext是Map结构的容器,ActionContext是Action的上下文,类比ServletContext,存放着Action执行过程中的数据信息,比如Action的数据,request的数据,session的s数据,applicaton的数据等.每次请求时会为当前线程创建一个新的ActionContext对象.通过ThreadLocal来维护当前线程的request等数据,所以ActionContext是线程安全的.

  • 获取ActionContext

    ActionContext.getContext()来获取.由于ActionContext是线程安全的,并且是通过静态方法获取的,所以在本线程的非Action类中,也可以直接访问.

    注意:ActionContext是基于请求创建的,所以在非请求的线程中是不能使用ACtionContext对象的.如filter的init()方法.

  • 什么是值栈(ValueStack)?

    ValueStack是ActionContext的一个对象,值栈是栈结构(先进先出),struts2中值栈存放的数据是Action对象,