public class BaseAction<T> extends ActionSupport implements ModelDriven<T>{

    // 1. 封装数据
private T t;
public T getModel(){
return t;
} // 1.1 实例化 t
public BaseAction(){
try{
// 得到当前运行类的 Class
Class c = this.getClass();
ParameterizedType ptype = (ParameterizedType)c.getGenericSuperclass(); Type[] types = ptype.getActualTypeArguments();
Class<T> clazz = (Class<T>)types[0]; t = clazz.newInstance();
} catch(Exception e){
throw new RuntimeException(e);
}
} // 2. Spring 注入 service, 多个
// 提供 set 方法, 让 spring 进行注入的;
// 提供 get 方法, 让子类可以获得 spring 注入的对象
private CustomerService customerService;
public void setCustomerService(CustomerService customerService){
this.customerService = customerService;
}
public CustomerService getCustomerService(){
return customerService;
} // 3. 分页数据
private Integer pageCode = 1; // 第几页
public void setPageCode(Integer pageCode){
if(pageCode == null){
pageCode = 1;
}
this.pageCode = pageCode;
}
public Integer getPageCode(){
return pageCode;
} private Integer pageSize = 2; // 每页显示数据的条数
public void setPageSize(Integer pageSize){
this.pageSize = pageSize;
}
public Integer getPageSize(){
return pageSize;
} // 4. 简化值栈操作
public void push(Object obj){
ActionContext.getContext().getValueStack().push(obj);
} public void set(String key, Object obj){
ActionContext.getContext().getValueStack().set(key,obj);
} public void put(String key, Object obj){
ActionContext.getContext().put(key,obj);
} public void putSession(String key, Object obj){
ActionContext.getContext().getSession().put(key,value);
} public void putApplication(String key, Object obj){
ActionContext.getContext().getApplication().put(key,value);
}
}

BaseAction 类的更多相关文章

  1. zTree实现地市县三级级联Action类

    zTree实现地市县三级级联Action类 ProvinceAction.java: /** * @Title:ProvinceAction.java * @Package:com.gwtjs.str ...

  2. Java类的继承与多态特性-入门笔记

    相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...

  3. strust2中使用session

    在Struts2里,如果需要在Action中使用session,可以通过下面两种方式得到1.通过ActionContext class中的方法getSession得到2.Action实现org.apa ...

  4. SSH:Struts2.2+Hibernate3.6+Spring3.1分页示例[转]

    参考资料 1 ssh分页(多个例子) http://useryouyou.iteye.com/blog/593954 2 ssh2分页例子 http://459104018-qq-com.iteye. ...

  5. struts2: config-browser-plugin 与 convention-plugin 学习

    struts2被很多新手诟病的一个地方在于“配置过于复杂”,相信不少初学者因为这个直接改投Spring-MVC了.convention-plugin. config-browser-plugin这二个 ...

  6. 国家电力项目SSH搭建

    SSH项目框架搭建总结: 1.建立Web工程 * 导入需要的jar的包 db:连接数据库的驱动包 hibernate:使用hibernate的jar包 jstl:java的标准标签库 junit:测试 ...

  7. 在某公司时的java开发环境配置文档

    1 开发环境配置 1.1.  MyEclipse 配置 1.MyEclipse下载地址:\\server\共享文件\backup\MyEclipse9.0 2.修改工作空间编码为UTF-8,如下图 3 ...

  8. struts2动态方法

    动态方法调用 在Struts2中动态方法调用有三种方式,动态方法调用就是为了解决一个Action对应多个请求的处理,以免Action太多 第一种方式:指定method属性 这种方式我们前面已经用到过, ...

  9. SSH电力项目

    第一步:创建测试表Elec_Text: create table Elec_Text(textID varchar(50) not null primary key,textName varchar( ...

随机推荐

  1. Windows 2003 远程桌面

  2. NIO - Selector源码分析

    1. 背景 SelectableChannel对象的多路复用器. 可以通过调用Selector.open()方法创建Selector对象.Selector.open()方法会利用系统默认的Select ...

  3. Atitit.js获取上传文件全路径

    Atitit.js获取上传文件全路径 1. 默认的value只能获取文件名..安全原因.. 1 2. Firefox浏览器的读取 1 3. Html5 的file api 2 4. 解决方法::使用a ...

  4. eclipse中使用weblogic作为服务器控制台中文乱码

    使用WebLogic时控制台输出中文乱码解决方法:   1.找到weblogic安装目录,当前项目配置的domain   2.找到bin下的setDomainEnv.cmd文件   3.打开文件,从文 ...

  5. 40. Implement Queue by Two Stacks【medium】

    As the title described, you should only use two stacks to implement a queue's actions. The queue sho ...

  6. 点击按钮,实现两个td值互换

    <body> <table id="table1"> <tr> <td>第一个单元格</td> <td>第二 ...

  7. RabbitMQ系列一

    1.http://www.erlang.org/downloads 下载一个比教新的版本(otp_win64_20.2.exe) 2.http://www.rabbitmq.com/install-w ...

  8. js测试

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. 机器学习算法( 五、Logistic回归算法)

    一.概述 这会是激动人心的一章,因为我们将首次接触到最优化算法.仔细想想就会发现,其实我们日常生活中遇到过很多最优化问题,比如如何在最短时间内从A点到达B点?如何投入最少工作量却获得最大的效益?如何设 ...

  10. C语言函数sscanf()的用法(转)

    转自:http://www.cnblogs.com/lyq105/archive/2009/11/28/1612677.html C语言函数sscanf()的用法 sscanf() - 从一个字符串中 ...