对ActionContext和ServletActionContext总结
1、ActionContext指action 执行时的上下文,上下文中存放一些请求的参数,servlet的上下文、会话和本地化的一些信息,我们可以通过getContext()获取这些信息。 ServletActionContext是继承ActionContext,ServletActionContext除能获取这些信息外,还可以获取 web容器的相关信息。
2、ActionContext是与web容器无关,它可以通过getContext().getParameters()获取请求的所有参数;而 ServletActionContext与web容器有关,它可以通过getRequest(),getResponse()等获取请求的信息。
3、他们都是线程安全的,用实例池解决线程安全性。这也是区别struts1的一个特点,struts1是单例模式,所有请求都只有一个action。
4、如果ActionContext能够实现我们的功能,那最好就不要使用ServletActionContext,让我们的Action尽量不要直接去访问JavaServlet的相关对象。在使用ActionContext时有一点要注意:不要在Action的构造函数里使用ActionContext.getContext(),因为这个时候ActionContext里的一些值也许没有设置,这时通过ActionContext取得的值也许是null。
分享到:
相关推荐
总结来说,ActionContext和ServletActionContext是Struts2中处理请求和响应的关键工具,它们提供了方便的方式来访问和操作HTTP请求、会话以及应用上下文中的数据,是理解Struts2工作原理的重要组成部分。正确使用这...
Struts2是一个流行的Java web框架,它简化了MVC(模型-...ActionContext提供了基本的请求和会话访问,而ServletActionContext则提供了对Servlet API的直接访问。理解这些机制对于编写高效、安全的Struts2应用至关重要。
这是为了保持Action的简洁性和避免对Servlet API的直接依赖,有利于代码的维护和解耦。 需要注意的是,由于ActionContext在Action实例化时可能还没有完全初始化,所以在Action的构造函数中不应直接使用`...
struts2.0 详细介绍了struts.xml的配置,以及web.xml的配置和ActionContext,ServletActionContext的用法和区别。ActionContext主要用于设置属性,而ServletActionContext主要用来得到属性
尽管如此,如果需要,Action仍然可以通过ActionContext或ServletActionContext访问HttpServletRequest、HttpServletResponse和HttpSession。ActionContext提供了获取当前请求上下文的方法,而ServletActionContext则...
通过上述内容,我们可以了解到在Struts 2框架中如何高效地处理用户输入数据,包括使用领域对象、ModelDriven Action、直接使用Action属性接收数据以及掌握ActionContext和ServletActionContext的用法。这些知识点...
ActionContext是Struts2的一个重要组成部分,它提供了对当前请求上下文的访问,包括HttpServletRequest和HttpServletResponse。在Action中,我们可以直接从ActionContext获取这两个对象: ```java public class ...
总的来说,在Struts2中,通过`ActionContext`和`ServletActionContext`,开发者可以方便地获取并处理JSP页面传递的参数,以及与Servlet相关的各种对象,以实现灵活的业务逻辑控制。正确理解和使用这两个类对于编写...
这种方式主要是利用了com.opensymphony.xwork2.ActionContext类以及org.apache.struts2.ServletActionContext类,具体的方法如下所示。 获得request对象: A . HttpServletRequest request = ServletActionContext....
Struts2 框架提供了多种方式来访问 Servlet API,包括使用 ActionContext 类、实现接口和使用 ServletActionContext 类等。在本文中,我们将详细介绍 Struts2 访问 Servlet API 的几种方法。 一、使用 ...
通过实现特定的接口或使用`ActionContext`和`ServletActionContext`类,开发者可以轻松地获取`request`、`session`和`response`对象。这些工具极大地简化了Web应用程序的开发过程,提高了代码的可维护性和可扩展性。
ServletActionContext 是 ActionContext 的一个实现,提供了对 Servlet容器的支持。 ServletDispatcher ServletDispatcher 是 WebWork 框架中的 dispatcher 组件,负责将用户请求 dispatch 到对应的 Action。...
在Struts2框架中,对request和session的管理和获取是实现Web应用中用户交互和状态维护的重要手段。本文将深入探讨Struts2中如何获取request和session,以及这两种对象的作用和应用场景。 ### Struts2框架简介 ...
总结来说,Struts2提供了多种方式来获取和操作Response对象,包括但不限于通过`ActionSupport`、拦截器、`ActionContext`以及OGNL表达式。这些方法使开发者能灵活地控制HTTP响应,满足各种业务需求。在实际开发中,...
总结来说,Struts2.1提供了多种方式来获取和操作Servlet对象,包括直接通过`ActionContext`、使用`ServletActionContext`以及通过IoC和`Aware`接口。这些方法各有优势,可以根据实际需求选择合适的方式。了解并熟练...
2. **ServletActionContext类**:这是ActionContext的一个扩展,提供了更方便的访问Servlet相关对象的方法,如`ServletActionContext.getRequest()`和`ServletActionContext.getResponse()`分别用于获取...