logo资料库

本科毕业论文 基于B/S的ERP人力资源管理子系统的设计与开发.doc

第1页 / 共38页
第2页 / 共38页
第3页 / 共38页
第4页 / 共38页
第5页 / 共38页
第6页 / 共38页
第7页 / 共38页
第8页 / 共38页
资料共38页,剩余部分请下载后查看
目 录
摘 要
关键词
Abstract
Key Words
前言
1 相关介绍
1.1框架介绍
1.2 Struts框架介绍
1.3 Hibernate框架介绍
1.4 Spring框架介绍
1.5开发工具及环境介绍
1.5.1 MyEclipse介绍
1.5.2 Tomcat介绍
1.6 Oracle数据库介绍
2 系统架构设计
2.1 Struts构建表示层
2.2 Spring构建业务逻辑层
2.3 Hibernate构建持久化层
2.4 系统架构设计
3 需求分析与总体设计
3.1 系统概述
3.2 需求分析
3.3 系统的功能结构
3.3.1 部门管理模块
3.3.2 员工管理模块
3.3.3 考勤管理模块
3.3.4 招聘管理模块
3.3.5 培训管理模块
3.3.6 绩效考评模块
3.3.7 合同管理模块
3.3.8 薪酬福利模块
3.3.9 辅助决策模块
3.3.10 系统管理模块
3.4 系统用户权限分类及描述
3.4.1普通用户
3.4.2 管理员
3.4.3 超级管理员
3.5 系统业务流程图
3.6 系统主要用例描述
3.6.1 系统登录
3.6.2 员工管理
3.7 数据库设计
3.7.1 数据库表及表关系
3.7.2 数据表逻辑结构
4 系统实现
4.1 搭建SSH框架
4.2 目录及包介绍
4.3 表示层实现
4.4 业务逻辑层实现
4.5 持久层及域对象层实现
4.6 其他实现
4.7 主要实现界面
4.7.1 登陆界面
4.7.2 首页面
4.7.3 部门信息列表界面
4.7.4 登记考勤界面
4.7.5 更新员工信息界面
5 系统测试与评价
5.1 测试环境
5.2 测试结果
5.2.1 功能测试
5.2.2 安全测试
总 结
参考文献
致 谢
华中农业大学本科毕业论文(或设计) 目 录 摘要 ···································································· III 关键词 ·································································· III Abstract ································································· III Key Words ······························································· III 前言 ····································································· 1 1 相关介绍 ······························································· 1 1.1 框架介绍 ...........................................................1 1.2 Struts 框架介绍 ......................................................2 1.3 Hibernate 框架介绍 .................................................. 2 1.4 Spring 框架介绍 ..................................................... 3 1.5 开发工具及环境介绍 .................................................3 1.5.1 MyEclipse 介绍 .................................................3 1.5.2 Tomcat 介绍 ................................................... 4 1.6 Oracle 数据库介绍 ................................................... 4 2 系统架构设计 ··························································· 5 2.1 Struts 构建表示层 ....................................................5 2.2 Spring 构建业务逻辑层 ............................................... 5 2.3 Hibernate 构建持久化层 .............................................. 5 2.4 系统架构设计 ...................................................... 6 3 需求分析与总体设计 ····················································· 8 3.1 系统概述 .......................................................... 8 3.2 需求分析 .......................................................... 8 3.3 系统的功能结构 .................................................... 9 3.3.1 部门管理模块 ................................................. 9 3.3.2 员工管理模块 ................................................. 9 3.3.3 考勤管理模块 ................................................. 9 3.3.4 招聘管理模块 ................................................. 9 3.3.5 培训管理模块 ................................................. 9 3.3.6 绩效考评模块 ................................................. 9 3.3.7 合同管理模块 ................................................. 9 3.3.8 薪酬福利模块 ................................................. 9 3.3.9 辅助决策模块 ................................................ 10 3.3.10 系统管理模块 ............................................... 10 3.4 系统用户权限分类及描述 ........................................... 10 3.4.1 普通用户 .................................................... 10 3.4.2 管理员 ...................................................... 10 3.4.3 超级管理员 .................................................. 10 3.5 系统业务流程图 ................................................... 11 3.6 系统主要用例描述 ................................................. 11 3.6.1 系统登录 .................................................... 11 3.6.2 员工管理 .................................................... 11 3.7 数据库设计 ....................................................... 13 I
华中农业大学本科毕业论文(或设计) 3.7.1 数据库表及表关系 ............................................ 13 3.7.2 数据表逻辑结构 .............................................. 14 4 系统实现 ······························································ 19 4.1 搭建 SSH 框架 .....................................................19 4.2 目录及包介绍 ..................................................... 21 4.3 表示层实现 ....................................................... 22 4.4 业务逻辑层实现 ................................................... 24 4.5 持久层及域对象层实现 ............................................. 25 4.6 其他实现 ......................................................... 26 4.7 主要实现界面 ..................................................... 29 4.7.1 登陆界面 .................................................... 29 4.7.2 首页面 ...................................................... 29 4.7.3 部门信息列表界面 ............................................ 29 4.7.4 登记考勤界面 ................................................ 31 4.7.5 更新员工信息界面 ............................................ 31 5 系统测试与评价 ························································ 32 5.1 测试环境 ......................................................... 32 5.2 测试结果 ......................................................... 32 5.2.1 功能测试 .................................................... 32 5.2.2 安全测试 .................................................... 32 总结 ···································································· 33 参考文献 ································································ 34 致谢 ···································································· 35 II
基于 B/S 的 ERP 人力资源管理子系统的设计与开发 华中农业大学本科毕业论文(或设计) 摘 要 随着社会经济的发展,人们逐渐认识到,人力是一种资源,是社会经济财富创造必 须具备的条件。人力资源是企业最重要的资源之一,对于企业来说,人力资源的管理关系 到企业的生存与发展。现代企业管理迫切需求设计一个能够适应和满足企业发展规模的 人力资源管理信息系统。本文设计并实现了基于 Struts,Spring 和 Hibernate 的 ERP 人力 资源管理子系统。该子系统使用 Struts 实现 MVC,Spring 负责架构的结合,Hibernate 进行数据的持久化,基本实现了部门管理、员工管理、招聘管理、考勤管理、培训管理、 绩效考评管理、薪资管理、合同管理、辅助决策、系统管理等模块。论文对系统的设计 和实现作出了详细的描述,并对系统进行了功能测试和安全测试。 关键词 人力资源管理子系统;Struts;Hibernate;Spring Design and Implementation of an ERP Human Resource Management Subsystem Based on B/S Abstract With the socio-economic development, people gradually realized that human is one of resources, is also a necessary condition of social and economic wealth creation. Human resource is one of the most important resources for enterprises, so human resource management related to the survival and development of enterprises. The urgent need of modern business management to design an enterprise to adapt and meet the scale of development of human resources management information systems.This article is designed and implemented an ERP Human Resource Management Subsystem based on Struts, Spring and Hibernate. The subsystems used Struts for MVC, Spring is responsible for the combination of the framework, Hibernate for data persistence, the basic achievement of the departmental management, staff management, recruitment management, attendance management, training management, performance appraisal management, payroll management, contract management, supporting decision-making, the system management module. Paper descripted detail of design and implementation of system, and the system functional testing and security testing. Human Resource Management Subsystem;Struts;Hibernate;Spring Key Words III
华中农业大学本科毕业论文(或设计) 前言 21世纪是知识经济的时代,是人才的时代。随着高新技术的不断发展和企业规模的 扩大以及市场竞争的日趋激烈,各企业日益认识到人力资源系统管理的重要性及提升企 业自身人力资源系统管理水平的迫切性。人力资源被视为企业的资源之本,是企业管理 中的重要组成部分,人力资源管理水平的提高可以带动企业各方面水平的提升。运用 ERP系统对人力资源进行管理,可以更好地协调企业人才,提高人才的利用率。 企业的 ERP 系统是在 90 年代中,随计算机局域网的成熟应用,硬件设备价格下降 到相当程度时开始的。国内稍有历史的企业都在 90 年代中开始注意到信息化方面的投 资,软件公司则在财务软件和企业管理软件方面开始自己的商品化目标。经过近 7~8 年 的发展,ERP 产品的概念、管理思想已被企业接受,企业用户数的增长和产品的增长都 同样迅速,围绕企业信息化的市场的确非常活跃(李严锋,2001)。 目前,高端的 ERP 产品仍然是来自于国外,包括 SAP、Oracle、JDE、SSA 等等, 这些产品的拥有者基本上都在中国设立了自己的公司,有些还设立了研究开发中心,支 持产品的汉化和响应客户的二次开发需求。伴随着 WTO 的加入以及企业信息化的飞速 进展,ERP 在中国也进入广泛普及阶段,越来越多的人知道了什么是 ERP,应用更加务 实、业务范围更加广泛、涉及的业务深度逐渐加强的 ERP 正为广大的中国企业所期盼。 由于 ERP 系统的高效性,逻辑连贯性等优点,我国越来越多的企业逐步在引入 EPR 管理系统,虽然引入了 ERP 系统,但由于在使用过程当中,未能达到 EPR 系统的要求, 所以经常出现错误结论,甚至增加了操作人员的工作量,未能提高工作效率,反而处处 受到辖制。目前我国不能真正充分利用 ERP 系统功能的企业很多。所以在 EPR 系统的 使用上有待提高。ERP 软件在国外中小企业在欧洲应用率 65%,在中国只有 0.5%,这 方面的发展空间很大。 企业资源规划(ERP)以管理思想为基础,建立在信息技术基础之上的一整套管理 信息系统,其目的是整合、优化企业资源。ERP系统中的人力资源管理与传统方式下的 人事管理有着根本的不同。本课题主要利用数据库系统开发和网络编程等相关技术进行 该系统设计。通过对理论内容的研究,能编程实现ERP人力资源管理子系统。 1 相关介绍 1.1 框架介绍 著名的软件大师 Ralph Johnson 对框架(Framework)进行了如下的定义:框架是整 个系统或系统的一部分的可重用设计,由一组抽象的类及其实例间的相互作用方式组 成。框架一般具有即插即用的可重用性、成熟的稳定性及良好的团队协作性。J2EE 复 杂的多层结构决定了大型 J2EE 项目需要运用框架和设计模式来控制软件质量。目前, 市场上流行一些商业的、开源的基于 J2EE 应用框架,其中主流的框架技术有:基于 MVC 模式的 Struts 框架和基于 IoC 模式的 Spring 框架以及对象/关系映射框架 Hibernate 等。 1
华中农业大学本科毕业论文(或设计) 1.2 Struts 框架介绍 Struts 是一个基于 J2EE 平台的 MVC 框架,主要是采用 Servlet 和 JSP 技术来实现的。 Struts 把 Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的 框架中,开发人员利用其进行开发时不用再自己编码实现全套 MVC 模式,极大的节省 了时间。它首先通过 JSP 页面实现交互界面,负责接收请求(Request)和传送响应 (Response),然后 Struts 根据配置文件(struts-config.xml)将 ActionServlet 接收到的 Request 委派给相应的 Action 处理(陈天河,2007)。图 1 是 Struts1.x 中的 MVC 实现示 意图。 Event Http Request Dispatch Cotroller Servlet BusinessLogic Action struts-config.xml Client Browser Forward Update Http Response View JSP Get Model Application State 图 1 Struts 1.x 中的 MVC 实现示意图 Fig. 1 The Realization of the MVC diagram in Struts 1.x 1.3 Hibernate 框架介绍 Hibernate 是一个开放源代码的对象关系映射框架,能够建立面向对象的域模块和关 系数据库模型之间的映射,用来把对象模型表示的对象映射到基于 SQL 的关系模型结 构中去,为面向对象的领域模型到传统的关系型数据库的映射,提供了一个使用方便的 框架。它不仅管理 Java 类到数据库表的映射(包括从 Java 数据类型到 SQL 数据类型的 映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用 SQL 和 JDBC 处理数据的时间。由于对 JDBC 进行了非常轻量级的对象封装,在分层的软件架 构中它位于持久层封装了所有数据库细节,使得 Java 程序员可以使用对象编程思维来操 纵数据库,使业务逻辑层可以专注于实现业务逻辑。Hibernate 可以应用在任何使用 JDBC 的场合,既可以在 Java 的客户端程序使用,也可以在 Servlet/JSP 的 Web 应用中使用, 完成数据持久化的重任。 Hibernate 结构框架图如图 2 所示。 2
华中农业大学本科毕业论文(或设计) Application Persistent Objects Hibernate hibernate. properties XML Mapping Database 图 2 Hibernate 结构框架图 Fig. 2 The Structure of the framework map of Hibernate 1.4 Spring 框架介绍 Spring 是一个开源框架,它由 Rod Johnson 创建。它是为了解决企业应用开发的复 杂性而创建的。Spring 使用基本的 JavaBean 来完成以前只可能由 EJB 完成的事情,所 以又称为轻量级容器(相对 EJB 而言)。 核 心 容 器 : 核 心 容 器 提 供 Spring 框 架 的 基 本 功 能 。 核 心 容 器 的 主 要 组 件 是 BeanFactory,它是工厂模式的实现。BeanFactory 使用控制反转(IoC)模式将应用程序 的配置和依赖性规范与实际的应用程序代码分开。 Spring 通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了 IoC,一个对 象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖 对象。可以认为 IoC 与 JNDI 相反——不是对象从容器中查找依赖,而是容器在对象初 始化时不等对象请求就主动将依赖传递给它。Spring 框架结构图如图 3 所示。 1.5 开发工具及环境介绍 1.5.1 MyEclipse 介绍 MyEclipse 企业级工作平台(MyEclipse Enterprise Workbench ,简称 MyEclipse)是 对 Eclipse IDE 的扩展,利用它我们可以在数据库和 J2EE 的开发、发布,以及应用程序 服务器的整合方面极大的提高工作效率。它是功能丰富的 J2EE 集成开发环境,包括了 完备的编码、调试、测试和发布功能,完整支持 HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。在结构上,MyEclipse 的特征可以被分为 7 类:(1)J2EE 模型;(2)WEB 开发工具;(3)EJB 开发工具;(4)应用程序服务器的连接器;(5)J2EE 项目部署 服务;(6)数据库服务;(7)MyEclipse 整合帮助。 3
华中农业大学本科毕业论文(或设计) Spring AOP Source-level metadate AOP infrastructure Spring ORM Hibernate support iBatis support JDO support Spring Web WebApplicationContext Multipart resolver Web utilities Spring DAO Transaction infrastructure JDBC support DAO support Spring Context ApplicationContext UI support Validation JNDI EJB support &Remoting mail Spring Web MVC Web MVC Framework Web Views JSP/Velocity PDF/Excel Spring Core Supporting utilities Bean container 图 3 Spring 框架结构图 Fig. 3 The Structure of the framework map of Spring 1.5.2 Tomcat 介绍 Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,它是 Apache 软件基金 会(Apache Software Foundation)的 Jakarta 项目中的一个核心项目,由 Apache,Sun(2009 年 4 月 21 日被 Oracle 公司收购)和其它一些公司及个人共同开发而成。因为 Tomcat 技术先进、性能稳定,而且免费,因而深受 Java 爱好者的喜爱并得到了部分软件开发商 的认可,成为目前比较流行的 Web 应用服务器。 Tomcat 服务器接受客户请求并做出响应的过程: (1)客户端访问 Web 服务器,发送 HTTP 请求; (2)Web 服务器接收到请求后,传递给 Servlet 容器; (3)Servlet 容器加载 Servlet,产生 Servlet 实例后,向其传递表示请求和响应对象; (4)Servlet 实例使用请求对象得到客户端请求信息,然后进行相应处理; (5)Servlet 实例将处理结果通过响应对象发送回客户端,容器负责确保响应正确送 出,同时将控制返回给 Web 服务器。 1.6 Oracle 数据库介绍 Oracle 是以高级结构化查询语言(SQL)为基础的大型关系数据库,通俗地讲它是 用方便逻辑管理的语言操纵大量有规律数据的集合。是目前最流行的客户/服务器 (CLIENT/SERVER)体系结构的数据库之一。 Oracle 数据库服务器是一个对象----关系数据库管理系统。它提供开放的、 4
华中农业大学本科毕业论文(或设计) 全面的、和集成的信息管理方法。每个 Server 由一个 Oracle DB 和一个 Oracle Server 实例组成。它具有场地自治性(Site Autonomy)和提供数据存储透明机制,以此 可实现数据存储透明性。每个 Oracle 数据库对应唯一的一个实例名 SID。客户端 为数据库用户操作端,由应用、工具、SQL*NET 组成,用户操作数据库时,必须 连接到一服务器,该数据库称为本地数据库(Local DB)。在网络环境下其它服务 器上的 DB 称为远程数据库(Remote DB)。用户要存取远程 DB 上的数据时,必 须建立数据库链(滕永昌,2006)。 Oracle 数据库的体系结构包括物理存储结构和逻辑存储结构。由于它们是相 分离的,所以在管理数据的物理存储结构时并不会影响对逻辑存储结构的存取。 2 系统架构设计 2.1 Struts 构建表示层 Struts 是当今流行的 JSP Web 框架。Struts 框架是一种基于 Java 的技术,Web 应用程 序开发人员通过它可充分利用面向对象设计、代码重用以及“编写一次、到处运行”的优 点。Struts 提供了一种创建具有良好可管理性的 Web 应用框架,其中对应用程序的显 示、表示和数据的后端代码进行抽象。Struts 在框架结构中所负责:管理用户的请求; 做出相应的响应;提供一个流程控制器,委派调用业务逻辑和其他上层处理;处理异常; 为显示提供一个数据模型;用户界面的验证(冉春玉,白炳杉,2004)。Struts 的 UML 顺序图如图 4 所示。 2.2 Spring 构建业务逻辑层 Spring 业务层在框架中负责下面这些事情:处理应用程序的业务逻辑和业务校验; 管理事务;提供与其他层相互作用的接口;管理业务层级别的对象依赖;在表示层和持 久层之间增加了一个灵活的机制,使得他们不直接联系在一起;通过提示从表示层到业 务层之间的上下文(Context)来得到业务层逻辑(BusinessService);管理程序的执行(从 业务层到持久层)(张帆,2005)。用 Spring 容器代替 DAO 工厂,Spring 实现了两种基 本模式:单态模式和工厂模式。而使用 Spring 可以完全避免使用工厂模式,因为 Spring 就是个功能非常强大的工厂。因此,完全可以让 Spring 充当 DAO 工厂。由 Spring 充当 DAO 工厂时,无须程序员自己实现工厂模式,只需要将 DAO 组件配置在 Spring 容器中, 由 applicationContext 负责管理 DAO 组件的创建即可。借助于 Spring 提供的依赖注入, 其他组件甚至不用访问工厂,一样可以直接使用 DAO 实例(汪沁,2003)。 2.3 Hibernate 构建持久化层 Hibernate 是一种 O/RM 映射工具,它不仅提供了从 Java 类到数据表之间的映射, 也提供了数据查询和恢复机制。相对于使用 JDBC 和 SQL 来手工操作数据库,使用 Hibernate,可以大大减少操作数据库的工作量。Hibernate 可以和多种 Web 服务器或者 5
分享到:
收藏