与ServletAPI解耦的访问方式
为了避免与 Servlet API 耦合在一起, 方便 Action 做单元测试, Struts2 对 HttpServletRequest, HttpSession 和 ServletContext 进行了封装, 构造了 3 个 Map 对象来替代这 3 个对象, 在 Action 中可以直接使用 HttpServletRequest, HttpSession, ServletContext 对应的 Map 对象来保存和读取数据.
========================================
访问request/session/application对象
方法一:通过ServletActionContext类直接获取
* 获取 HttpServletRequest 对应的 Map对象:
* 获取 ServletContext 对应的 Map对象:
>public Map getApplication()
----------------------
方法二:实现指定接口,由struts框架运行时注入:
Action 类通过可以实现某些特定的接口, 让Struts2 框架在运行时向 Action 实例注入 parameters,request, session 和 application 对应的 Map 对象:
========================================
访问request/session/application对象中的属性