资源描述
综合课程实习说明书 课程名称: 综合课程实习 设计题目: 人事管理系统 专 业: 计算机科学与技术 班级: 0601 学生姓名: 郭威 学 号: 0612030108 指导教师: 文志强 湖南工业大学科技学院教务部 制2010年 1 月 15 日目 录1 引言11.1管理信息系统概述.1 1.2 SQL2005介绍.2 1.3框架介绍.32 系统分析.62.1需求分析.62.2系统目标.62.3系统概况.62.4系统性能要求.63系统设计.73.1概要设计.73.2详细设计.104系统实现.144.1编程环境介绍.14 4.2系统运行结果.145总结与体会.25参考文献.161 引言人事管理是现代企业管理工作不可缺少的一部分,是适应现代企业管理尺度的要求、推动企业劳动人事管理走向科学化、规范化的必要条件。只有人事管理规范了,才能在其他方面更好的发展。为了适应现代企业或公司经营发展的需要,人事管理也从以前的手工管理逐渐被规范化的管理信息系统所代替。众所周知,当今社会为信息社会,世界已进入在计算机信息管理领域中激烈竞争的年代,因此,加强人事管理在单纯依靠以手工管理的方法,不仅需要耗用大量的人力、物力、财力,而且工作效率低,而且难以达到预期的目的,为提高企业工作效率、保证企业人事管理质量、快而准确地为企业制定好的经营方针与决策,,人事管理是当今企事业单位中不可缺少的一部分.它适应时代潮流,顺应时代发展,是现代企业制度发展的要求,推动企业人事管理科学化,规范化的必要条件“科学技术是第一 生产力”,只有人事管理规范化,其他事情才能办好。适应现代企事业单位管理规范化,经营发展战略的需要,人事管理也应由原来的手工管理逐渐被规范化的信息管理系统所代替。众所周知,当今社会是信息社会,特别是在我国加入WTO之后,信息更是科学化,迅速化,全球化。因此,要想加强人事管理,单纯依靠以前的手工管理,不仅会浪费大量的人力,物力,财力,而且效率不高,而且很难达到预期的目的。所以人事管理信息系统能够为高层领导者提供准确的人员信息,以便领导者了解企业各个部门的人员构成,计算好人力成本,安排好工作计划,使企业变的更高效,更具有生命力。1.1 管理信息系统概述20世纪,随着全球世界经济的发展,众多经济学家纷纷提出了新的管理理论。20世纪50年代,西蒙提出管理依赖于信息和决策的思想。同时期的维纳 发表了控制论,他认为管理是一个控制过程。1958年,盖尔写到:“管理将以较低的成本得到及时准确的信息,做到较好的控制”。这个时期,计算机开始用于会计工作。数据处理一词已经出现。管理信息系统的创始人,明尼苏达大学的管理学教授Gordon B. Davis在1985年给了管理信息系统一个较完整的定义,即“管理信息系统是一个利用计算机软硬件资源以及数据库的人-机系统。它能提供信息支持企业或组织的运行,管理和决策功能。”这个定义全面地说明了管理信息系统的目标,功能和组成,而且反映了管理信息系统在当时达到的水平。管理工作的成败,取决于能否做出有效的决策,而决策的正确程度则取决于信息的质量。计算机在管理中的应用不仅仅只用于数据处理,而且辅助决策的工具。计算机能把生产、经营过程中的巨大数据流收集、组织起来,经过处理,转换为对各部门不可缺少的数据,经过分析,使它变为各级管理人员做出决策具有重要意义的信息。管理方面应用计算机已经发展成为专门的管理信息系统(Management Information System,简称MIS)。我国的管理信息系统应用已从单项业务的信息管理,迅速向综合的管理层和决策层的信息管理发展,应用水平日趋提高。1.2 SQL2005介绍SQL(Structured Query Language),结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。绝大多数流行的关系型数据库管理系统都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select, Insert, Update, Delete, Create,以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。SQL Server 是一个关系数据库管理系统。它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。SQL Server 2005 是一个全面的数据库平台,使用集成的商业智能 (BI) 工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。SQL Server 2005 数据引擎是本企业数据管理解决方案的核心。此外 SQL Server 2005 结合了分析、报表、集成和通知功能。这使您的企业可以构建和部署经济有效的 BI 解决方案,帮助您的团队通过记分卡、Dashboard、Web services 和移动设备将数据应用推向业务的各个领域。与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)的紧密集成使 SQL Server 2005 与众不同。无论您是开发人员、数据库管理员、信息工作者还是决策者,SQL Server 2005 都可以为您提供创新的解决方案,帮助您从数据中更多地获益。1.3 框架介绍本系统采用Struts+Spring+Hibernate的框架实现。SSH=Struts + Spring + Hibernat。其中,Struts进行流程控制,Spring进行业务流转,Hibernate进行数据库操作的封装。典型的J2EE三层结构,分为表现层、中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。 表现层是传统的JSP技术,自1999年问世以来,经过多年的发展,其广泛的应用和稳定的表现,为其作为表现层技术打下了坚实的基础。 中间层采用的是流行的Spring+Hibernate,为了将控制层与业务逻辑层分离,又细分为以下几种:Web层,就是MVC模式里面的“C”(controller),负责控制业务逻辑层与表现层的交互,调用业务逻辑层,并将业务数据返回给表现层作组织表现,该系统的MVC框架采用Struts。 Service层(就是业务逻辑层),负责实现业务逻辑。业务逻辑层以DAO层为基础,通过对DAO组件的正面模式包装,完成系统所要求的业务逻辑。 DAO层,负责与持久化对象交互。该层封装了数据的增、删、查、改的操作。PO,持久化对象。通过实体关系映射工具将关系型数据库的数据映射成对象,很方便地实现以面向对象方式操作数据库。Spring的作用贯穿了整个中间层,将Web层、Service层、DAO层及PO无缝整合,其数据服务层用来存放数据。1)Model部分由ActionForm和JavaBean组成,其中ActionForm用于封装用户的请求参数,封装成ActionForm对象,该对象被ActionServlet转发给Action,Action根据ActionFrom里面的请求参数处理用户的请求。JavaBean则封装了底层的业务逻辑,包括数据库访问等。2)View部分该部分采用JSP实现。Struts提供了丰富的标签库,通过标签库可以减少脚本的使用,自定义的标签库可以实现与Model的有效交互,并增加了现实功能。对应上图的JSP部分。3)Controller组件Controller组件有两个部分组成系统核心控制器,业务逻辑控制器。系统核心控制器,对应上图的ActionServlet。该控制器由Struts框架提供,继承HttpServlet类,因此可以配置成标注的Servlet。该控制器负责拦截所有的HTTP请求,然后根据用户请求决定是否要转给业务逻辑控制器。业务逻辑控制器,负责处理用户请求,本身不具备处理能力,而是调用Model来完成处理。对应Action部分。Spring:Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。目的:解决企业应用开发的复杂性功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能范围:任何Java应用简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。轻量从大小与开销两方面而言Spring都是轻量的。完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。并且Spring所需的处理开销也是微不足道的。此外,Spring是非侵入式的:典型地,Spring应用中的对象不依赖于Spring的特定类。 控制反转Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。你可以认为IoC与JNDI相反不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。面向切面Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务(transaction)管理)进行内聚性的开发。应用对象只实现它们应该做的完成业务逻辑仅此而已。它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持。 容器Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例以及它们是如何相互关联的。然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。 框架Spring可以将简单的组件配置、组合成为复杂的应用。在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。 所有Spring的这些特征使你能够编写更干净、更可管理、并且更易于测试的代码。它们也为Spring中的各种模块提供了基础支持。Hibernate:Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。业务层Web层DAOModelActionFormDAOManagerActionServletDAO工厂数据库视图层Jsp,Html2 系统分析2.1需求分析人事管理是每个企业必不可少的。人事档案管理系统一般包括对人事档案的统计、查询、更新、报表输出等功能。如果人工直接统计的话,工作量将十分庞大,特别是,如果企业员工有几万或几十万人时,人工统计将变得不可能想象。 用计算机可使人们从繁重而又单调的统计运算中解脱出来,仅用一些简单的操作便可及时准确地获得需要的信息。效率大大高于人工统计。我们利用计算机替代手工操作建立的人事信息系统,即计算机人事信息系统,其主要功能可以归纳为以下三点: 一是可以高效能、大容量地收集、处理、存贮人事信息,大幅度地提高人事管理信息系统的工作质量和效率。 二是可以及时掌握整个人事管理系统的全面情况,提供系统的准确的人事信息,可以促进人事工作的规范化及各项管理制度与指标体系的建立和健全,从而提高行政管理水平。 三是可以提供各种加工处理了的人事信息,以满足人事管理的特殊要求,适应新形势对教职工队伍提出的新要求,帮助选择方案,实现优化决策。2.2系统目标通过人事管理系统可使管理者快速高效地完成企业日常事务中的人事工作,降低人事管理的成本,使管理者能集中精力实现企业战略目标。人事管理系统的具体目标如下:1) 企业人事管理的基本信息进行管理。2) 企业的员工信息(即人事管理功能)。3) 实现为个人提供网络工作平台的功能。4) 实现企业的应聘信息的管理功能。5) 实现企业员工培训的一系列相关信息的管理。6) 员工薪酬信息管理。7) 系统用户信息的管理。8) 系统运行稳定、安全可靠。2.3 系统功能分析人事管理系统的主要任务是对人事档案进行整理,使得能方便快捷地对人事档案进行查询、统计、更新,并且能按一定要求输出报表。通过该系统,使企业的人事管理工作系统化、规范化、自动化,从而提高企业人事管理的效率。 2.4系统性能要求1)系统安全、可靠;2)功能齐全;3)操作方便、界面友好;4) 易于维护和扩充。3 系统设计3.1概要设计3.1.1系统流程图图3.1 人事信息管理系统的系统运行流程图3.1.2系统功能模块1)部门管理:对部门信息进行添加、查询及删除操作。2)员工管理:对员工信息进行添加、修改、查询及删除操作。3)招聘管理:对招聘人信息进行添加、查询、删除及录用操作。4)培训管理:对培训信息进行添加、查询及删除操作。5)薪资管理:对薪资信息进行添加、查询及删除操作。6)奖惩管理:对员工奖励,处罚信息进行添加、查询及删除操作3.1.3人事管理系统总体结构图人事管理系统总体结构图如下图所示:人事管理系统奖惩管理奖励管理惩罚管理招聘管理员工管理培训管理薪资管理部门信息管理企业人才管理招聘信息管理培训信息管理员工考勤管理薪酬信息管理部门管理图3.2人事信息管理系统总体结构图3.1.4系统数据流图管理查询员工管理员人事管理系统员工信息图3.3 系统数据流图3.3.5系统分工这次课程设计我主要做的是培训管理管理模块、奖惩管理模块和员工管理模块。3.3.6培训管理模块ER图如图3.4 培训编号培训主题 培训姓名培训时间培训地点图3.4培训管理ER图 3.3.7奖罚管理模块ER图如图3.5奖罚主题奖罚编号 奖惩奖金 奖罚时间 图3.5奖罚管理ER图3.3.8员工管理模块ER图如图3.6图3.6员工信息E-R图 员工信息编号流水号姓名性别工种号出生日期民族婚否政治面貌住址电话号码毕业学校就读专业从事工作时间备注创建此员工信息的帐户名工作类型部门号从事本公司工作时间3.2详细设计3.2.1数据项设计和逻辑结构设计通过需求分析,可确定系统的数据项和数据结构如下:1)培训管理模块:培训(编号、姓名、主题、时间、地点);如图3.7字段名数据类型长度是否主键描述idint20是培训编号namevarchar50培训人themevarchar100培训主题timeDate培训时间placevarchar100培训地点图3.7培训数据表字典2) 奖罚管理模块:奖罚(编号、主题、奖金、时间);如图3.8字段名数据类型长度是否主键描述idint20是奖罚编号themevarchar100奖罚主题moneyint10奖金timeDate奖罚时间图3.8奖罚数据表字典3) 员工管理模块:员工(编号、流水号、姓名、性别、工种号、出生日期、民族、婚否、政治面貌、住址、电话号码、毕业学校、就读专业、从事工作时间、部门号、工作类型、从事公司工作时间、创建此员工信息的帐户名、备注);如图3.9图3.9员工管理数据表字典3.2.2培训管理模块模块培训是员工培训技能的统一信息。系统操作管理员可以对培训员工进行添加、查询及删除培训信息的操作。培训管理查询培训信息更新培训信息 3.10培训模块结构图3.2.3奖罚管理模块模块奖罚管理是员工奖罚的统一信息。管理员对员工奖惩信息进行添加、查询及删除操作。奖罚管理查询奖罚信息更新奖罚信息 3.11奖罚管理模块结构图3.2.4员工管理模块3.12员工管理模块图4系统实现4.1编程环境介绍操作系统:Microsoft Windows xp;数据库:SQL server 2005;开发语言: Java。4.2系统运行结果培训管理管理运行结果如下图。3.13培训管理运行结果培训管理结果实现关键代码:package com.wy.action;import java.util.List;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;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.wy.dao.ObjectDao;import com.wy.form.TrainForm;public class TrainAction extends DispatchAction private ObjectDao objectDao;public ObjectDao getObjectDao() return objectDao;public void setObjectDao(ObjectDao objectDao) this.objectDao = objectDao;/ 培训察看操作public ActionForward queryTrain(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) List list = objectDao.getObjectList(from TrainForm order by id desc);request.setAttribute(list, list);return mapping.findForward(queryTrain);/ 添加培训操作public ActionForward deleteTrain(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) String id=request.getParameter(id);TrainForm trainForm=(TrainForm)objectDao.getObjectForm(from TrainForm where id=+id+);this.objectDao.deleteObjectForm(trainForm);return this.queryTrain(mapping, form, request, response);/添加培训操作public ActionForward saveTrain(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) TrainForm trainForm=(TrainForm)form;this.objectDao.insertObjectForm(trainForm);return mapping.findForward(operationTrain);/培训详细查询public ActionForward queryOneTrain(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) String id=request.getParameter(id);TrainForm trainForm=(TrainForm)objectDao.getObjectForm(from TrainForm where id=+id+);request.setAttribute(trainForm, trainForm);return mapping.findForward(queryOneTrain);奖惩管理运行结果如下图。3.14奖罚管理运行结果奖惩管理实现关键代码:package com.wy.action;import java.util.List;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;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.wy.dao.ObjectDao;import com.wy.form.CjForm;import com.wy.form.TrainForm;public class CjAction extends DispatchAction private ObjectDao objectDao;public ObjectDao getObjectDao() return objectDao;public void setObjectDao(ObjectDao objectDao) this.objectDao = objectDao;/ 奖惩察看操作public ActionForward queryCj(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) String information = from CjForm order by id desc;if (request.getParameter(type) != null) String type = request.getParameter(type).trim();information = from CjForm where cj_type= + type+ order by id desc;request.setAttribute(type, type);System.out.println(information:+information);List list = objectDao.getObjectList(information);request.setAttribute(list, list);return mapping.findForward(queryCj);/ 删除奖惩操作public ActionForward deleteCj(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) String id = request.getParameter(id);if (id = null) CjForm cjForm = (CjForm) objectDao.getObjectForm(from CjForm where id= + id + );this.objectDao.deleteObjectForm(cjForm);return this.queryCj(mapping, form, request, response);/ 添加奖惩操作public ActionForward saveCj(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) CjForm cjForm = (CjForm) form;this.objectDao.insertObjectForm(cjForm);return mapping.findForward(operationCj);/ 奖惩详细查询public ActionForward queryOneCj(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) String id = request.getParameter(id);CjForm cjForm = (CjForm) objectDao.getObjectForm(from CjForm where id= + id + );request.setAttribute(cjForm, cjForm);return mapping.findForward(queryOneCj);员工管理运行结果如下图。点击员工管理,页面会跳到员工查询页面。用户可以根据分类部门查询按钮来查询各个部门的员工情况,如图3.14。3.15员工管理运行结果 管理员可以点击页面右下角的添加员工信息连接来添加员工信息:如图3.15。3.16添加员工运行结果员工管理模块便于管理员对员工的信息进行添加删除与修改查询。而且可以为普通用户查询员工信息给予一个方便的平台。员工管理模块的流程图如下3.16所示:员工管理实现关键代码:package com.wy.action;import java.util.List;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;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.wy.dao.ObjectDao;import com.wy.form.DepartmentForm;import com.wy.form.EmployeeForm;import com.wy.form.InviteJobForm;import com.wy.form.ManagerForm;import com.wy.tool.GetAutoNumber;public class EmployeeAction extends DispatchAction private ObjectDao objectDao;public ObjectDao getObjectDao() return objectDao;public void setObjectDao(ObjectDao objectDao) this.objectDao = objectDao;/ 转向员工录用的页面public ActionForward forwardEmploye(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) this.saveToken(request);String condition = from EmployeeForm order by id desc;List list = objectDao.getObjectList(condition);String autoNumber = 1;if (list.size() != 0) EmployeeForm employeeform = (EmployeeForm) list.get(0);Integer em_serialNumber = Integer.valueOf(employeeform.getId() + 1;autoNumber = String.valueOf(em_serialNumber);autoNumber = GetAutoNumber.getMaxNuber(autoNumber);request.setAttribute(departmentList, objectDao.getObjectList(from DepartmentForm);EmployeeForm employeeForm =(EmployeeForm)form;String id = request.getParameter(id);InviteJobForm inviteJobForm = (InviteJobForm) objectDao.getObjectForm(from InviteJobForm where id= + id + );employeeForm.setEm_serialNumber(autoNumber);/将员工编号自动赋值employeeForm.setEm_name(inviteJobForm.getName();/将员工姓名赋值employeeForm.setEm_afterschool(inviteJobForm.getAfterSchool();/将员工的毕业学校自动赋值employeeForm.setEm_sex(inviteJobForm.getSex();/将员工的性别赋值employeeForm.setEm_born(inviteJobForm.getBorn();/将员工的出生日期赋值employeeForm.setEm_address(inviteJobForm.getAddress();/将员工地址赋值employeeForm.setEm_culture(inviteJobForm.getTeachSchool();/将员工的文化程度赋值employeeForm.setEm_tel(inviteJobForm.getTel();/将员工电话赋值employeeForm.setEm_speciality(inviteJobForm.getSpecialty();/将员工所学专业赋值request.setAttribute(employeeForm, employeeForm);request.setAttribute(id, id);return mapping.findForward(forwardEmploy);/员工录用public ActionForward addEmployee(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) EmployeeForm employeeForm = (EmployeeForm) form;if (this.isTokenValid(request) this.resetToken(request);objectDao.insertObjectForm(employeeForm); else this.saveToken(request);request.setAttribute(result, 不能重复提交!);request.setAttribute(id, request.getParameter(id);return mapping.findForward(operationEmployee);/ 员工查看详细信息操作public ActionForward queryOneEmployee(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) String em_serialNumber = request.getParameter(em_serialNumber);String condition = from EmployeeForm where em_serialNumber=+ em_serialNumber + ;EmployeeForm employeeForm = (EmployeeForm) objectDao.getObjectForm(condition);request.setAttribute(employeeForm, employeeForm);request.setAttribute(departmentList, objectDao.getObjectList(from DepartmentForm);return mapping.findForward(queryOneEmployee);/ 员工查看操作public ActionForward queryEmployee(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) List list = null;String condition = from EmployeeForm order by id desc;if (request.getParameter(departmentId) != null) String em_departmentId = request.getParameter(departmentId);condition = from EmployeeForm where em_departmentId=+ em_departmentId + order by id desc;request.setAttribute(departmentId, em_departmentId);list = objectDao.getObjectList(condition);request.setAttribute(list, list);request.setAttribute(departmentList, objectDao.getObjectList(from DepartmentForm);return mapping.findForward(queryEmployee);/ 转向添加员工的页面public ActionForward forwardInsertEmployee(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) this.saveToken(request);String condition = from EmployeeForm order by id desc;List list = objectDao.getObjectList(condition);String autoNumber = 1;if (list.size() != 0) EmployeeForm employeeform = (EmployeeForm) list.get(0);Integer em_serialNumber = Integer.valueOf(employeeform.getId() + 1;autoNumber = String.valueOf(em_serialNumber);autoNumber = GetAutoNumber.getMaxNuber(autoNumber);request.setAttribute(autoNumber, autoNumber);request.setAttribute(departmentList, objectDao.getObjectList(from DepartmentForm);return mapping.findForward(forwardInsertEmployee);/ 添加员工public ActionForward saveEmployee(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) EmployeeForm employeeForm = (EmployeeForm) form;if (this.isTokenValid(request) this.resetToken(request);objectDao.insertObjectForm(employeeForm); else this.saveToken(request);request.setAttribute(result, 不能重复提交!);return queryEmployee(mapping, form, request, response);/ 转向修改员工的页面public ActionForward forwardUpdateEmployee(ActionMapping mapping,ActionForm form, HttpServletRequest request,HttpServletResponse response) this.saveToken(request);String em_serialNumber = request.getParameter(em_serialNumber);String condition = from EmployeeForm where em_serialNumber=+ em_serialNumber + ;EmployeeForm employeeForm = (EmployeeForm)
展开阅读全文