import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.interceptor.ServletResponseAware;
import com.opensymphony.xwork2.ActionSupport;
public abstract class BaseAction extends ActionSupport implements ServletRequestAware, ServletResponseAware {
private static final long serialVersionUID = 1L;
public HttpServletRequest request;
public HttpServletResponse response;
public void setServletRequest(HttpServletRequest request) {
this.request = request;
}
public void setServletResponse(HttpServletResponse response) {
this.response = response;
}
/**
* 获得request
*
* @return
*/
public HttpServletRequest getRequest() {
return ServletActionContext.getRequest();
}
/**
* 获得response
*
* @return
*/
public HttpServletResponse getResponse() {
return ServletActionContext.getResponse();
}
/**
* 获得session
*
* @return
*/
public HttpSession getSession() {
return getRequest().getSession();
}
/**
* 获得servlet上下文
*
* @return
*/
public ServletContext getServletContext() {
return ServletActionContext.getServletContext();
}
public String getRealyPath(String path) {
return getServletContext().getRealPath(path);
}
}
分享到:
相关推荐
在Struts2中,操作Servlet API 的BaseAction 包括获取Request对象、获取Session对象、获取ServletContext对象、获取Response对象
### SSH框架整合详细步骤(spring+struts2+hibernate) #### 一、整合概述 在现代Web应用开发中,SSH(Struts2、Spring、Hibernate)框架因其各自独特的功能和优势,常被组合使用以构建高效、稳定且易于维护的系统...
3. **定义Action类**:Action类是处理用户请求的核心,它继承自Struts2提供的BaseAction类,或者实现Action接口,并包含处理业务逻辑的方法。 4. **创建结果视图**:Struts2支持多种结果视图,如JSP、FreeMarker、...
在实际开发中,开发者通常会创建一个BaseAction类,继承自Struts2的ActionSupport类,并注入必要的Service,这样可以减少重复代码。对于Mapper接口,每个接口对应一个XML文件,其中包含SQL语句和结果映射。当...
在给定的代码片段中,可以看到`GoodsAction`类继承自`BaseAction`,这表明它是一个Struts2 Action,负责处理与商品相关的请求。其中,`clearUpCar`方法用于清空购物车,通过获取所有cookies并将它们的生存周期设为0...
jQuery EasyUI与Struts2 的整合—属性驱动篇 如果你是用模型驱动,或者是直接把属性写在action里面,你不会碰到我遇到的那么多问题。 但是你用模型驱动好吗,如果一个页面需要处理多个对象的时候怎么办。 如果你...
Action类需要继承Struts2提供的BaseAction或实现Action接口,并定义相应的execute方法。 5. **结果类型Result** 结果类型定义了Action执行后的跳转逻辑。Struts2支持多种Result类型,如dispatcher(默认的,转发到...
开发者可以创建自己的Action类,继承自Struts2提供的BaseAction或实现Action接口,然后在Action类中编写业务逻辑。 2. **拦截器(Interceptor)**:拦截器是Struts2的一大特色,它允许开发者在Action执行前后插入...
2. **日志记录**:测试`BaseAction`的日志功能,包括调试信息、警告和错误信息的记录,这有助于在开发和维护阶段追踪问题。 3. **请求参数验证**:验证`BaseAction`是否正确地获取和验证HTTP请求中的参数,防止非法...
根据给定的信息,我们可以深入探讨Struts2框架与Struts1的主要差异,特别是关于Action与JSP页面之间信息交互的方式,以及如何结合Hibernate进行数据持久化处理。 ### Struts2与Struts1的区别 #### 1. **信息交互...
在Java的Struts2框架中,接收参数是实现动态页面与后台交互的关键步骤。本文将深入探讨Struts2接收参数的几种主要方法,包括通过Action的属性、使用Domain Model(领域模型)以及采用DTO(数据传输对象)进行参数...
《项目架构那点儿事》——浅析Web层Struts2的构建 在Web开发领域,Struts2作为一款流行的MVC框架,为开发者提供了高效、灵活的架构支持。本篇文章将深入探讨Struts2在Web层的构建过程,通过分析提供的文件名,我们...
### 一、Struts2框架中的自定义拦截器 #### 1.1 概念介绍 - **拦截器**是Struts2框架中的一个核心组件,用于对Action执行前后进行一系列操作,如权限验证、日志记录等。 - **自定义拦截器**则是开发者可以根据自己...
### Struts2与Hibernate结合开发的关键知识点 #### 一、Struts2与JSP页面间的交互方式 在Struts2框架中,Action类与JSP页面之间的数据传递机制与Struts1有所不同。Struts2主要依赖于Action类中的成员变量进行数据...
- 创建一个抽象类`BaseAction`,用于封装Struts 2与Extjs之间的交互逻辑。 ```java package com.xy.action; import java.util.List; import org.apache.struts2.config.ParentPackage; import org.apache....
### Java Struts2框架中的表单校验及处理机制 #### Struts2简介 Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web应用框架,它简化了Web应用程序的开发过程,提供了丰富的特性来支持复杂的业务...
如果你的Action类没有继承`ActionSupport`或`BaseAction`,并且在`struts.xml`中没有使用`<action>`标签的`method`属性指定其他方法,那么Struts2默认会寻找`execute`方法。此时,你需要实现`execute`方法,否则...
在基于Spring MVC或Struts等Web框架的开发中,`BaseAction` 通常作为控制器层(Controller)的基础类。它封装了一些共通的逻辑,比如请求处理、权限验证、日志记录等,以便子类继承后直接使用。这样可以减少代码重复...
- 所有的Action继承自BaseAction类,在BaseAction类中实现权限检查逻辑,并在每个Action中调用此逻辑。 - 将权限检查逻辑集成到Struts框架中,例如通过扩展`org.apache.struts.action.ActionServlet`类来实现。 ...
Struts1.2、Spring2和Hibernate3是Java Web开发中的三大框架,它们的整合是构建企业级应用的常见方式。这个实例代码提供了一个清晰的示例,展示了如何将这三个框架有效地结合在一起。 Struts1.2是MVC(Model-View-...