Struts2访问Servlet的API

在Struts2中,Action没有直接和Servlet API进行耦合,即Action不能直接访问Servlet API。所以Struts2提供了三种方法访问Servlet API。

【通过ActionContext类访问】

ActionContext是Action执行的上下文对象,在其中保存了Action执行所需要的对象,包括parameters,request,session,application等。虽然该方法可以访问到Servlet API,但是无法直接获取Servlet API实例。下面列举ActionContext类访问Servlet API的几个常用方法:

Struts2补充学习-02

Struts2补充学习-02

示例代码如下:

Struts2补充学习-02

【通过特点接口访问】

  • ServletRequestAware:实现该接口的Action可以直接访问Web应用的HttpServletRequest实例。
  • ServletResponseAware:实现该接口的Action可以直接访问Web应用的HttpServletResponse实例。
  • ServletAware:实现该接口的Action可以直接访问Web应用的HttpSession实例。
  • ServletContextAware:实现该接口的Action可以直接访问Web应用的ServletContext实例。

【通过ServletActionContext访问】

为了直接访问Servlet API,Struts2框架还提供了ServletActionContext类,其中包含了几个常用的静态方法:

  • static HttpServletRequest getRequest():获取Web应用的HttpServletRequest对象。
  • static HttpServletResponse getResponse():获取Web应用的HttpServletReSponse对象。
  • static ServletContext getServletContext():获取Web应用的HttpServletRequest对象。
  • static PageContext getPageContext ():获取Web应用的PageContext 对象。

结果界面的配置

Struts2补充学习-02

全局结果界面

Struts2补充学习-02

局部结果界面

Struts2补充学习-02

Struts2补充学习-02

Struts2的ResultType

在Struts2中,当框架调用Action对请求进行处理后,就要向用户呈现一个结果视图。在Struts2中,预定义了多种ResultType,其实就是定义了多种展示结果的技术。下图中红色的几个值比较常用。

Struts2补充学习-02

Struts的数据封装

相关文章:

  • 2021-12-26
  • 2021-04-06
  • 2022-02-18
  • 2021-08-18
  • 2021-12-11
  • 2022-12-23
  • 2022-12-23
  • 2022-02-07
猜你喜欢
  • 2021-06-04
  • 2021-06-28
  • 2022-01-06
  • 2021-04-21
  • 2021-06-10
  • 2021-12-10
  • 2022-12-23
相关资源
相似解决方案