雇员管理系统-SSH版(七)
2017-12-23 18:55
453 查看
添加雇员信息
一 MainFrame.jsp
二 addEmpUi.jsp
三 struts-config.xml
四 EmployeeAction
六 applicationContext.xml
一 MainFrame.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";> <html> <head> <title>My JSP 'MainFrame.jsp' starting page</title> </head> <body> <h2>欢迎${loginuser.name} 你所在的部门名称是${loginuser.department.name } 请选择您要的操作</h2> <a href="${pageContext.request.contextPath}/employee.do?flag=addEmpUi">添加雇员</a><br/> <a href="${pageContext.request.contextPath}/employee.do?flag=goListEmp">显示雇员</a><br/> <a href="#">查询雇员</a><br/> <a href="#">退出系统</a><br/> </body> </html>
二 addEmpUi.jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";> <html> <head> <title>My JSP 'addEmpUi.jsp' starting page</title> </head> <body> <h1>添加雇员</h1> <form action="${pageContext.request.contextPath}/employee.do?flag=addEmp" method="post"> <table> <tr><td>name</td><td><input type="text" name="name" /></td></tr> <tr><td>email</td><td><input type="text" name="email" /></td></tr> <tr><td>grade</td><td><input type="text" name="grade" /></td></tr> <tr><td>pwd</td><td><input type="text" name="pwd" /></td></tr> <tr><td>salary</td><td><input type="text" name="salary" /></td></tr> <tr><td>department</td><td> <!-- 这里部门的信息,应当从数据库提出,而不能写死. --> <select name="departmentId"> <option value="5">财务部</option> </select> </td></tr> <tr><td><input type="submit" value="添加"/></td> <td><input type="reset" value="重填" /></td></tr> </table> </form> </body> </html>
三 struts-config.xml
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://struts.apache.org/dtds/struts-config_1_3.dtd";> <struts-config> <form-beans> <form-bean name="employeeForm" type="com.hsp.web.forms.EmployeeForm" /> </form-beans> <action-mappings> <action path="/login" parameter="flag" name="employeeForm"> <forward name="ok" path="/WEB-INF/MainFrame.jsp"/> <forward name="err" path="/WEB-INF/login.jsp"/> </action> <!-- 配置employeeaction --> <action path="/employee" name="employeeForm" parameter="flag"> <forward name="goAddEmpUi" path="/WEB-INF/addEmpUi.jsp" /> <forward name="goListEmp" path="/WEB-INF/listEmp.jsp"/> <forward name="goUpdEmpUi" path="/WEB-INF/updEmpUi.jsp"/> </action> </action-mappings> <!-- 配置全局跳转 --> <global-forwards> <forward name="opererr" path="/WEB-INF/err.jsp" /> <forward name="operok" path="/WEB-INF/ok.jsp" /> </global-forwards> <!-- 配置代理请求处理 DelegatingRequestProcessor --> <controller> <set-property property="processorClass" value="org.springframework.web.struts.DelegatingRequestProcessor"/> </controller> </struts-config>
四 EmployeeAction
package com.hsp.web.action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.actions.DispatchAction; import com.hsp.domain.Department; import com.hsp.domain.Employee; import com.hsp.service.interfaces.DepartmentServiceInter; import com.hsp.service.interfaces.EmployeeServiceInter; import com.hsp.web.forms.EmployeeForm; public class EmployeeAction extends DispatchAction { private DepartmentServiceInter departmentService; private EmployeeServiceInter employeeService; public void setEmployeeService(EmployeeServiceInter employeeService) { this.employeeService = employeeService; } public void setDepartmentService(DepartmentServiceInter departmentService) { this.departmentService = departmentService; } public ActionForward addEmpUi(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { // TODO Auto-generated method stub //打通线路 return mapping.findForward("goAddEmpUi"); } //处理添加雇员的请求 public ActionForward addEmp(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { // TODO Auto-generated method stub //看看这里是否能够得到用户提交的各种数据 EmployeeForm employeeForm=(EmployeeForm)form; //System.out.println(employeeForm.getDepartmentId()+" "+employeeForm.getEmail()); //创建一个Employee对象 Employee employee=new Employee(); employee.setEmail(employeeForm.getEmail()); employee.setGrade(Integer.parseInt(employeeForm.getGrade())); employee.setHiredate(new java.util.Date()); employee.setName(employeeForm.getName()); employee.setPwd(employeeForm.getPwd()); employee.setSalary(Float.parseFloat(employeeForm.getSalary())); //该雇员是哪个部门! employee.setDepartment((Department)departmentService.findById(Department.class, Integer.parseInt(employeeForm.getDepartmentId()))); //保存 try { employeeService.add(employee); } catch (Exception e) { return mapping.findForward("opererr"); } return mapping.findForward("operok"); } public ActionForward goListEmp(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String s_pageNow=request.getParameter("pageNow"); int pageNow=1; if(s_pageNow!=null){ pageNow=Integer.parseInt(s_pageNow); } // TODO Auto-generated method stub request.setAttribute("emplist", employeeService.showEmployList(3,pageNow)); //测试 int pageCount=employeeService.getPageCount(3); request.setAttribute("pageCount", pageCount); //打通线路 return mapping.findForward("goListEmp"); } //删除雇员 public ActionForward delEmp(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { //获取雇员的id String id=request.getParameter("id"); System.out.println("删除雇员id = "+id); try { employeeService.delById(Employee.class, Integer.parseInt(id)); } catch (Exception e) { return mapping.findForward("opererr"); // TODO: handle exception } //打通线路 return mapping.findForward("operok"); } //跳转到雇员的界面 public ActionForward goUpdEmpUi(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { //获取雇员的id String id=request.getParameter("id"); //获取雇员 Employee e=(Employee) employeeService.findById(Employee.class, Integer.parseInt(id)); //显示雇员信息,在下一个页面 request.setAttribute("emp", e); return mapping.findForward("goUpdEmpUi"); } //更新雇员 public ActionForward updEmp(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { //获取表单 EmployeeForm ef=(EmployeeForm)form; //ef->doamin Employee employee=new Employee(); employee.setId(Integer.parseInt(ef.getId())); employee.setEmail(ef.getEmail()); employee.setGrade(Integer.parseInt(ef.getGrade())); employee.setName(ef.getName()); employee.setPwd(ef.getPwd()); employee.setSalary(Float.parseFloat(ef.getSalary())); employee.setDepartment((Department)departmentService.findById(Department.class, Integer.parseInt(ef.getDepartmentId()))); try { employeeService.update(employee); } catch (Exception e) { return mapping.findForward("opererr"); } return mapping.findForward("operok"); } }五 EmployeeForm
package com.hsp.web.forms; import org.apache.struts.action.ActionForm; public class EmployeeForm extends ActionForm { private String id; private String pwd; private String email; private String grade; private String name; private String salary; private String departmentId; public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getGrade() { return grade; } public void setGrade(String grade) { this.grade = grade; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSalary() { return salary; } public void setSalary(String salary) { this.salary = salary; } public String getDepartmentId() { return departmentId; } public void setDepartmentId(String departmentId) { this.departmentId = departmentId; } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getPwd() { return pwd; } public void setPwd(String pwd) { this.pwd = pwd; } }
六 applicationContext.xml
<?xml version="1.0" encoding="utf-8"?> <beans xmlns="http://www.springframework.org/schema/beans"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xmlns:context="http://www.springframework.org/schema/context"; xmlns:tx="http://www.springframework.org/schema/tx"; xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.springframework.org/schema/txhttp://www.springframework.org/schema/tx/spring-tx-2.5.xsd";> <!-- 启用注解扫描 --> <context:annotation-config/> <!-- 配置和一个testService对象 --> <bean id="testServcie" class="com.hsp.test.TestServcie"> <property name="name" value="test"/> </bean> <!-- 配置数据源 --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="org.gjt.mm.mysql.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/employee?useUnicode=true&characterEncoding=utf-8"/> <property name="username" value="root"/> <property name="password" value="waDY820828"/> <!-- 连接池启动时的初始值 --> <property name="initialSize" value="3"/> <!-- 连接池的最大值 --> <property name="maxActive" value="500"/> <!-- 最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止 --> <property name="maxIdle" value="2"/> <!-- 最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请 --> <property name="minIdle" value="1"/> </bean> <!-- 配置会话工厂() --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <!-- 设置数据源 --> <property name="dataSource" ref="dataSource"/> <!-- 接管了hibernate对象映射文件 --> <property name="mappingResources"> <list> <value>com/hsp/domain/Employee.hbm.xml</value> <value>com/hsp/domain/Department.hbm.xml</value> </list> </property> <property name="hibernateProperties"> <value> hibernate.dialect=org.hibernate.dialect.MySQLDialect hibernate.hbm2ddl.auto=update hibernate.show_sql=true hibernate.cache.use_second_level_cache=true hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider hibernate.generate_statistics=true </value> </property> </bean> <!-- 配置EmployeeService对象 --> <!-- <bean id="employeeService" class="com.hsp.service.imp.EmployeeService"> <property name="sessionFactory" ref="sessionFactory" /> </bean>--> <!-- 配置EmployeeService对象通过注解的方式来注入属性值,这是一个知识点 --> <bean id="employeeService" class="com.hsp.service.imp.EmployeeService"/> <bean id="departmentService" class="com.hsp.service.imp.DepartmentService"> <property name="sessionFactory" ref="sessionFactory"/> </bean> <!-- 配置action --> <bean name="/login" scope="prototype" class="com.hsp.web.action.LoginAction"/> <bean name="/employee" scope="prototype" class="com.hsp.web.action.EmployeeAction"> <property name="departmentService" ref="departmentService"/> <property name="employeeService" ref="employeeService"/> </bean> <!-- 配置事务管理器,统一管理sessionFactory的事务 --> <bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"/> </bean> <!-- 启用事务注解 --> <tx:annotation-driven transaction-manager="txManager"/> </beans>
相关文章推荐
- ssh之雇员管理系统(1)-spring测试
- ssh之雇员管理系统(2)-hibernate测试
- 雇员管理系统ssh之准备1
- 雇员管理系统-SSH版(三)
- 雇员管理系统-SSH版(九)
- 雇员管理系统-SSH版(四)
- 雇员管理系统-SSH版(八)
- 雇员管理系统-SSH版(十)
- ssh之雇员管理系统(10)-分页实现
- 雇员管理系统-SSH版(五)
- 雇员管理系统-SSH版(六)
- Spring 雇员管理系统SSH 1
- Spring 雇员管理系统SSH 3
- ssh之雇员管理系统(6)-解决中文乱码问题
- Spring 雇员管理系统SSH 4
- Spring 雇员管理系统SSH 6
- 雇员管理系统ssh之准备2
- Spring 雇员管理系统SSH 5
- 雇员管理系统-SSH版(一)