本文共 3128 字,大约阅读时间需要 10 分钟。
一 配置文件
struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /* contextConfigLocation /WEB-INF/applicationContext.xml, /WEB-INF/daoContext.xml org.springframework.web.context.ContextLoaderListener index.jsp
二 EmpBaseAction
package org.crazyit.hrsystem.action.base;import com.opensymphony.xwork2.ActionSupport;import org.crazyit.hrsystem.service.EmpManager;public class EmpBaseAction extends ActionSupport{ // 依赖的业务逻辑组件 protected EmpManager mgr; // 依赖注入业务逻辑组件所必须的setter方法 public void setEmpManager(EmpManager mgr) { this.mgr = mgr; }}
三 MgrBaseAction
package org.crazyit.hrsystem.action.base;import com.opensymphony.xwork2.ActionSupport;import org.crazyit.hrsystem.service.MgrManager;public class MgrBaseAction extends ActionSupport{ protected MgrManager mgr; public void setMgrManager(MgrManager mgr) { this.mgr = mgr; }}
四 AddEmpAction
package org.crazyit.hrsystem.action;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import com.opensymphony.xwork2.*;import org.apache.struts2.interceptor.*;import org.crazyit.hrsystem.exception.HrException;import org.crazyit.hrsystem.domain.*;import org.crazyit.hrsystem.action.base.MgrBaseAction;public class AddEmpAction extends MgrBaseAction{ // 代表新增员工的成员变量 private Employee emp; // emp的setter和getter方法 public void setEmp(Employee emp) { this.emp = emp; } public Employee getEmp() { return this.emp; } public String execute() throws Exception { // 创建ActionContext实例 ActionContext ctx = ActionContext.getContext(); // 获取HttpSession中的user属性 String mgrName = (String)ctx.getSession() .get(WebConstant.USER); // 添加新用户 mgr.addEmp(emp , mgrName); addActionMessage("新增员工成功"); return SUCCESS; }}
五 AppChangeAction
package org.crazyit.hrsystem.action;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import com.opensymphony.xwork2.*;import org.apache.struts2.interceptor.*;import org.crazyit.hrsystem.exception.HrException;import org.crazyit.hrsystem.action.base.EmpBaseAction;import org.crazyit.hrsystem.vo.*;import java.util.*;import java.text.SimpleDateFormat;public class AppChangeAction extends EmpBaseAction{ // 封装所有异动的列表 private List types; // types的setter和getter方法 public void setTypes(List types) { this.types = types; } public List getTypes() { return this.types; } // 处理用户请求 public String execute() throws Exception { setTypes(mgr.getAllType()); return SUCCESS; }}
转载地址:http://qmmj.baihongyu.com/