首页>代码>java SSH三大框架整合,实现了泛型baseAction,泛型baseService,泛型baseDao>/sshdemo/src/com/ssh/demo/action/BaseAction.java
package com.ssh.demo.action; import java.io.InputStream; import java.lang.reflect.ParameterizedType; import java.util.List; import java.util.Map; import javax.annotation.Resource; import org.apache.struts2.interceptor.ApplicationAware; import org.apache.struts2.interceptor.RequestAware; import org.apache.struts2.interceptor.SessionAware; import com.opensymphony.xwork2.ActionSupport; import com.opensymphony.xwork2.ModelDriven; import com.ssh.demo.service.UserService; @SuppressWarnings("unchecked") public class BaseAction<T> extends ActionSupport implements RequestAware, SessionAware, ApplicationAware, ModelDriven<T> { protected T model; // model 有可能为 user,student,teacher等等........ protected Map<String, Object> jsonMap = null; protected List<T> jsonList = null; protected InputStream inputStream = null; protected Map<String, Object> application; protected Map<String, Object> session; protected Map<String, Object> request; @Resource protected UserService userService; /** * 通过反射动态的创建对象 */ public BaseAction() { ParameterizedType type = (ParameterizedType) this.getClass() .getGenericSuperclass(); Class clazz = (Class) type.getActualTypeArguments()[0]; try { model = (T) clazz.newInstance(); } catch (Exception e) { throw new RuntimeException(e); } } @Override public T getModel() { return model; } public void setJsonMap(Map<String, Object> jsonMap) { this.jsonMap = jsonMap; } public Map<String, Object> getJsonMap() { return jsonMap; } public List<T> getJsonList() { return jsonList; } public void setJsonList(List<T> jsonList) { this.jsonList = jsonList; } public InputStream getInputStream() { return inputStream; } public void setInputStream(InputStream inputStream) { this.inputStream = inputStream; } @Override public void setApplication(Map<String, Object> application) { this.application = application; } @Override public void setSession(Map<String, Object> session) { this.session = session; } @Override public void setRequest(Map<String, Object> request) { this.request = request; } }
最近下载更多
tomjackhys LV11
2020年6月21日
AndrewLiuFuWen LV9
2020年5月5日
1690356080 LV37
2020年4月8日
zhangdd LV10
2019年11月20日
whywhywhy LV10
2019年10月9日
wxm4252 LV12
2019年9月15日
q1030275646 LV7
2019年4月22日
pubg0206 LV7
2019年3月18日
530413 LV5
2019年3月11日
rzj123456 LV2
2019年3月6日
最近浏览更多
1584435071
6月23日
暂无贡献等级
WBelong LV8
2023年12月11日
流年不辜 LV9
2022年4月27日
过过成功尺寸 LV7
2021年12月4日
czz123czz LV1
2021年3月18日
sfyzjc LV2
2021年1月7日
MARTIN66666 LV1
2020年12月26日
lsglsg9 LV23
2020年12月26日
jachyn LV6
2020年12月14日
Coincidance LV8
2020年12月3日