南瑞集团公司员工管理系统的设计与实现-职业学院毕业论文_第1页
南瑞集团公司员工管理系统的设计与实现-职业学院毕业论文_第2页
南瑞集团公司员工管理系统的设计与实现-职业学院毕业论文_第3页
南瑞集团公司员工管理系统的设计与实现-职业学院毕业论文_第4页
南瑞集团公司员工管理系统的设计与实现-职业学院毕业论文_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南瑞集团公司员工管理系统的设计与实现 南京铁道职业技术学院 毕业论文 题目:南瑞集团公司员工管理系统的设计与实现 作者:庞苗苗学号系:软件与艺术 专业:软件嵌入式 班级:软件嵌入式 1301 指导者:徐翔老师 评阅者: 2016 年 5 月 南瑞集团公司员工管理系统的设计与实现 南瑞集团公司员工管理系统的设计与实现 I 目录 摘要摘要错误!未定义书签。错误!未定义书签。 1 1 系统分析系统分析1 1 1.1 需求分析1 1.2 可行性分析1 1.2.1 经济性.1 1.2.2 技术性.1 1.2.3 操作可行性.2 1.2.4 系统结构可行性分析.2 2 2 总体设计总体设计2 2 2.1 项目规划2 2.2 设计目标3 2.3 系统功能结构图3 2.4 设计思想4 2.4.1 开发语言的选择.4 2.4.2 开发模式的选择.5 2.4.3 数据库的选择.6 2.5 开发及运行环境7 3 3 系统功能设计系统功能设计8 8 3.1 模块功能介绍8 3.2 数据库设计与实现8 3.2.1 数据库的需求分析.8 3.2.2 系统 E-R 图设计.8 3.2.3 数据库各表具体设计.10 3.2.4 数据库连接与访问.13 3.3 系统中的 JAVABEAN结构.16 3.4 公共模块16 4 4 系统实现系统实现1717 4.1 登录模块17 4.1.1 实现效果.17 4.1.2 相关 JavaBean 程序.19 4.1.3 相关文件.19 4.2 主页面模块19 4.2.1 实现效果.19 4.2.2 主页面相关 JSP 文件.20 4.3 人员档案模块21 4.3.1 实现效果.22 4.3.2 相关 JavaBean 程序.24 南瑞集团公司员工管理系统的设计与实现 II 4.3.3 相关 JSP 文件.24 4.4 奖惩管理模块25 4.4.1 实现效果.26 4.4.2 相关 JavaBean 程序.27 4.4.3 相关 JSP 文件.27 4.5 人员调动管理模块28 4.5.1 实现效果.29 4.5.2 相关 JavaBean 程序.30 4.5.3 相关 JSP 文件.30 4.6 企业员工管理系统文件结构图31 4.7 技术难点32 4.7.1 FOREIGN KEY 约束.32 4.7.2 安全性问题.36 4.7.3 中文乱码问题.36 4.7.4 JavaScript 的实现37 5 5 系统测试系统测试3737 5.1 测试的定义及目的37 5.2 测试的原则37 5.3 测试的方法38 5.3.1 界面测试.38 5.3.2 功能测试.38 5.3.3 需求测试.39 5.3.4 性能测试.39 5.4 测试中其他要注意的地方40 5.5 员工管理系统的测试40 6 6 结论结论4141 致致谢谢4242 参考文献参考文献4343 南瑞集团公司员工管理系统的设计与实现 III 毕 业 设 计 ( 论 文 ) 中 文 摘 要 南瑞集团公司员工管理系统的设计与实现 IV 南瑞集团公司员工管理系统的设计与实现 摘要:随着计算机的普及和计算机科学技术的飞速发展,人们开始 越来越多的利用计算机解决实际问题。员工信息管理是企业信息管 理的重要部分,面对大量的人事信息,采用人力处理即浪费时间, 又浪费人力和物力,并且数据的准确性低。因此,开发一个界面友 好,易于操作的员工信息管理软件进行自动化处理变得十分重要。 本文所阐述的企业员工管理系统,采用 B/S 结构,这种结构使得数 据只有结果集合在浏览器中显示,数据的处理在服务器进行,用户 不用安装客户端,而且由于通过服务器端统一管理数据,易于保证 数据的一致性。数据库方面,推荐业界具有领导地位的关系数据库 管理系统 Microsoft SQL sever2000,使系统安全性能更高。同时采 用当前正在流行的 JSP 编程,使用户界面更友好。在开发中选择了 JSP+JavaBean+SQL2000 的模式,实现了应用程序逻辑和页面显示分 离,使界面设计更简单。JavaBean 可重用的软件组件满足小型应用, 同时使编程人员投入少量精力便可重用组件,在简单的应用中可以 优先考虑。另外选用了经典的 Tomcat 作为服务器平台。本文从需求 分析、系统分析、概要设计、详细设计等方面详细介绍了企业员工 管理系统的整个开发过程。 关键字:企业员工;管理系统;JSP;数据库 南瑞集团公司员工管理系统的设计与实现 V 南瑞集团公司员工管理系统的设计与实现 1 1 系统分析 1.1 需求分析需求分析 通过调查,根据人事管理的基本需求,要求系统需要完成以下功能: (1)企业员工档案信息管理; (2)企业员工奖惩信息管理; (3)企业员工人员调动信息管理; (4)系统用户信息管理。 1.2 可行性分析 1.2.1 经济性 通过网络化的企业员工信息管理,大大的提高了企业人才的利用率,使之为 企业创造更大价值。人才利用率的提高,增强了企业的核心竟争力,全面提升了 企业的管理能力,从而使企业适应了信息时代的网络化管理要求。 1.2.2 技术性 通过网络化管理, 加强员工信息管理的方便性, 准确性。 使用 JSP 技术之后, Web 页面开发人员可以使用 HTML 或者 XML 标识来设计和格式化最终页面,使用 JSP 标识或者小脚本来生成页面上的动态内容。生成的内容的逻辑被封装在标识 和 JavaBeans 组件中,那么其他人,如 Web 管理人员和页面设计者,能够编辑和 使用 JSP 页面而不影响内容的生成。很多的 OS 中都带有 JDBC 驱动程序,Java 就通过 JDBC 与数据库连接,执行查询,提取数据等操作。Sun 公司还提供了 JDBC-ODBC 的桥连方式,因此 Java 也可以访问带有 ODBC 驱动的数据库,目前大 多数数据库系统都带有 ODBC 驱动, 所以 Java 能访问诸如 Oracle, Sybase, MS SQL Server 和 PostgresSQL 等类型的数据库。 南瑞集团公司员工管理系统的设计与实现 2 1.2.3 操作可行性 对于用户来说,本系统只要求使用者掌握一定的上网经验,经过仔细设计和 测试之后的系统具有操作简单, 方便灵活等优点, 可以满足用户各种不同的需求, 同时也方便了公司的内部管理。 管理人员和用户一定能在短时间内掌握并熟练使 用,只要动一动鼠标键盘就可以达到想要的效果。 1.2.4 系统结构可行性分析 本系统采用 B/S(Browser/Server)结构。B/S 结构即浏览器和服务器结构。 它是随着 Internet 技术的兴起,对 C/S 结构的一种变化或者改进的结构。在这 种结构下,用户工作界面是通过 WWW 浏览器来实现,极少部分事务逻辑在前端 (Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三 层 3-tier 结构。这样就大大简化了客户端电脑的负载,减轻了系统维护与升级 的成本和工作量,降低了用户的总体成本(TCO) 。以目前的技术看,局域网建立 B/S 结构的网络应用,并通过 Internet/Intranet 模式下数据库应用,相对易于 操作、成本也是较低的。它是一次到位的开发,能实现不同的人员,从不同的地 点,以不同的接入方式(比如 LAN,WAN,Internet/Intranet 等)访问和操作共 同的数据库;它能有效地保护数据平台和管理访问权限,使服务器数据库也很安 全。特别是在 JAVA 这样的跨平台语言出现之后,B/S 架构管理软件更是方便、 快捷、高效。其具有以下特点:维护和升级方式简单,成本降低,选择更多,只 要安装了浏览器就可以使用。 2 总体设计 2.1 项目规划 企业员工管理系统由员工档案信息管理、 奖惩信息管理、 人员调动信息管理、 系统用户管理 4 个部分组成,规划系统功能模块如下: 南瑞集团公司员工管理系统的设计与实现 3 人员档案信息管理模块:该模块主要功能是对员工基本信息进行管理。 员工奖惩信息管理模块:该模块主要是对企业员工奖惩情况进行管理。 人员调动信息管理模块:该模块主要是对企业员工调动信息进行管理。 系统用户管理模块:该模块主要功能是对管理员密码修改功能的管理。 2.2 设计目标 本系统主要用于对企业中的员工信息进行管理。具体地讲,员工管理系统就 是通过员工的档案信息管理、奖惩信息管理、员工调动信息管理等一系列手段来 提高劳动生产率,最终达到发展目标的一种管理行为。具体实现目标如下: 实现对员工信息进行全面管理的功能; 系统用户信息的管理; 企业员工奖惩信息的管理; 企业员工人员调动信息的管理; 系统最大限度地实现易安装性、易维护性和易操作性; 系统运行稳定、安全可靠。 2.3 系统功能结构图 企业员工管理系统功能结构如图 1 所示: 南瑞集团公司员工管理系统的设计与实现 4 图 1企业员工管理系统功能结构图 2.4 设计思想 2.4.1 开发语言的选择 随着互联网技术的不断发展,基于浏览器/服务器(Browser/Server 简称 B/S)体系结构的应用程序得到了空前广泛的应用。但是服务器之间的通讯,尤 其是在不同平台上运行的服务器之间的通讯仍然不是一件容易的事情。 因为大多 数 Internet 应用程序都是以数据库为中心的,方便的访问多种数据源的能力也 比以往任何时候都更加重要。 JSP 无疑可以轻松地实现这类功能, JSP 技术是一种服务器端的 HTML 页面中 嵌入 JAVA 代码的脚本语言,它比一般脚本语言的执行速度更快,由于 JSP 是基 于 JAVA 语言的,所以它可以运行在 UNIX/LINUX 和 WINDOWS 平台上,是一种难得 的动态网页开发语言。 在动态内容的解决问题中,还存在其他的解决方法,但是开发人员要掌握这 些技术很难。例如,Servlet 这样的技术就可以使得用 Java 语言编写交互式的 应用程序的服务器端的代码变得更加简单。Servlet 就是一个基于 Java 技术的 南瑞集团公司员工管理系统的设计与实现 5 运行在服务器端的程序(与 Applet 不同,后者运行在浏览器端) 。开发人员编写 出 Servlet 程序,用来接收来自 Web 浏览器的 HTTP 请求,动态地生成响应,然 后发送包含 HTML 或 XML 文档到浏览器。 但是使用这种方法,整个网页必须都在 Servlet 中制作。如果开发人员或者 Web 管理人员想要调整页面的显示,就不得不从新编辑并编译 Servlet 程序。采 用这种方法,编写带有动态内容的页面需要有很熟练的应用程序开发技巧和经 验。很显然,一个简单的创建动态页面的解决方案要能解决以下的问题: (1) 能够在任何 Web 或应用程序服务器上运行 (2) 将应用程序逻辑和页面显示分离 (3) 能够快速地开发和测试 (4) 简化开发基于 Web 的交互式应用程序的过程 Java Server Pages (JSP)满足这些要求,它整合了存在的 Java 编程环境提 供支持的技术和工具,产生了一种新的、开发基于 Web 应用程序的方法,这个方 法给予使用基于组件应用的逻辑页面的设计者提供了强大的功能。 2.4.2 开发模式的选择 JSP 的两种开发模式: 模式一:JSP+JavaBean 模式 模式二:JSP+Servlet+JavaBean 模式 在模式一中,JSP 页面独自响应请求并将处理结果返回给客户端。所有的数 据通过 Bean 来处理。模式一技术实现了页面的表现和页面的商业逻辑相分离。 大量使用模式一形式,常常会导致页面被嵌入大量的脚本语言或 JAVA 代码。当 需要处理的商业逻辑很复杂时,这种情况会变得非常糟糕。大量的代码会使整个 页面变得常复杂。对于前端界面设计人员来说,这简直不可想象。这种情况在大 项目中最为常见,这也造成了代码的开发和维护出现困难,造成了不必要的资源 浪费,在任何项目中,这样的模式多多少少总会导致定义不清的响应和项目管理 的困难。 所以,模式一不能满足大型项目的需要,但是可以较好的满足小型应 用,在简单的应用中可以考虑模式一。 模式二中 ,Servlet 技术是一种采用 JAVA 技术来实现 CGI 功能的一种。 南瑞集团公司员工管理系统的设计与实现 6 Servlet 技术是运行在 WEB 服务器上,用来生成 WEB 页面。Servlet 技术非常实 用于服务器端的处理和编程,并且 Servlet 会长期驻留在它们所处的位置。 但 是在实际的项目开发过程中,页面设计者可以方便地使用普通 HTML 工具来开发 JSP 页面,Servlet 却更适合于后端开发者使用,开发 Servlet 需要的是 JAVA 集 成开发环境,也就是说 Servlet 技术更需要编程人员。 模式二结合了 JSP 和 Servlet 技术,充分体现了两者的技术优点。在此模式中通过 JSP 来表现页面。 通过 Servlet 来完成大量的事务处理。 Servlet 充当一个控制者的角色,并负 责向客户发送请求。Servlet 创建 JSP 所需要的 Bean 和对象,然后根据用户的 请求行为,决定将哪个 JSP 页面发送给客户。 从开发的观点,模式二具有更清 晰的页面表现, 清楚的开发者角色划分, 可以充分利用开发小组的界面设计人员, 这些优势在大型项目开发中表现的尤为突出,使用这一模式,可以充分发挥每个 开发者各自的特长,界面设计人员可以充分发挥自己的表现力,设计出优美的界 面表现形式,设计人员可以充分发挥自己的商务处理思维,来实现项目中的业务 处理。在大型项目中,模式二更被采用。 但是,本系统开发只是一个小型的 JSP 应用,同时由于 Servlet 难于掌握, 所以在本课题中采用了模式一开发,既 JSP+JavaBeans 模式(如图 2) 。 图 2 JSP+JavaBean 模式结构图 2.4.3 数据库的选择 SQL Server 2000 是一个分布式的关系型数据库管理系统,具有客户/服务 南瑞集团公司员工管理系统的设计与实现 7 器体系结构。Mircrosoft SQL Server 2000 是一个应用广泛的数据库管理系统, 具有许多显著特点,例如,用户喜欢的易用性、适合分布式组织的可伸缩性、用 于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的 性价比等。 SQL Server 2000 系统中,数据库的管理采取了先进的动态管理机制,数据 库的大小可以随着数据量的变化而缩小或者扩大。另外,用户数据都是非常重要 的和保密的,这些数据存储在 Mircrosoft SQL Server 2000 系统中有绝对的安 全性保障,有完善的用户帐户策略和许可机制,只有经过授权的用户才能访问系 统,并且执行相应的操作和访问允许访问的数据。未经授权的用户既不能执行相 应的操作,也不能访问数据库中的相应数据。 SQL Server 2000 系统具有强大的网上功能,可以在 Internet 上发布数据 库中的数据。在 Mircrosoft SQL Server 2000 系统中,允许用户简单的使用一 些向导和工具把数据库的数据发布到网络上, 并且可以根据需要来调度修改已经 发布的数据。 2.5 开发及运行环境 JDK 版本jdk1.6.0_10 IDE 开发环境MyEclipse6.0.1 数据库Microsoft SQL Server 2000 WEB 发布服务器Tomcat5.0.28 开发技术JSP、JavaBean 测试环境Windows2000WindowsXPWindows2003 南瑞集团公司员工管理系统的设计与实现 8 3 系统功能设计 3.1 模块功能介绍 (1)登录模块 此模块实现用户进入系统管理前的验证操作, 只有输入正确的用户名和密码 才能进入系统 ,进行各种操作。 (2)人员档案模块 此模块实现对企业所有员工的档案进行管理,并且根据需要,可以对某个员 工的档案进行修改、删除和查询。 (3)奖惩管理模块 本模块提供了记录奖惩类别,内容,原因等奖惩信息的管理。可以根据需要 添加奖惩详细信息、删除奖惩详细信息、修改奖惩详细信息。 (4)人员调动模块 本模块提供了管理企业人员调动信息管理的功能,可以根据需要,对某条调 动记录进行修改和删除。 3.2 数据库设计与实现 3.2.1 数据库的需求分析 依据项目的处理需求,对应数据表的设计及功能如下: (1)员工基本信息表(employee): 主要用于保存员工基本信息 (2)奖惩管理信息表(reward): 主要用于保存奖惩信息 (3)人事调动信息表(translate): 主要用于保存内部人员调动信息 (4)系统用户管理表(users): 主要用于保存用户信息 3.2.2 系统 E-R 图设计 系统 E-R 图设计如图 3 所示,系统管理员与属性的关系如图 4,员工信息实 体与属性的关系如图 5,奖惩信息实体与属性的关系如图 6,人员调动信息实体 南瑞集团公司员工管理系统的设计与实现 9 与属性的关系如图 7。 n m 1 系统管理 员 拥 有 管理权限 人员调动信息奖惩信息 员工信息 添加 管 理 查询 删除修改 添 加 管 理 查 询 删 除 修 改 添 加 管 理 查 询 删 除 修 改 图 3员工管理系统 E-R 图 1 m n n m 密码 系统管理员 图 4系统管理员实体 用户名 员工信息 图 5员工信息实体 姓名 员工编号 性别 部门 出生日期 身份证号 政治面貌 毕业时间 毕业院校 外语等级 家庭电话 家庭住址 籍贯 学历 婚姻 民族 职务 公积金帐号 计算机等级 手机号码 南瑞集团公司员工管理系统的设计与实现 10 3.2.3 数据库各表具体设计 表 1 员工基本信息表(employee) 名称字段名类型长度主键非空 员工编号EmployeeIDvarchar6yesyes 姓名UserNamevarchar20noyes 性别Sexvarchar10noyes 部门Branchvarchar40noyes 出生日期Birthdaydatetime8noyes 籍贯NativePlacevarchar20noyes 奖惩信息 记录编号 职称 员工编号 奖/惩 奖惩内容 原因 批准部门 审核人 开始时间 撤销时间 备注 撤销原因 图 6 奖惩信息实体 人员调动 记录编号 员工编号 前部门 前职务 原因 经办人 现职务 调动时间 备注 现部门 图 7人员调动信息实体 南瑞集团公司员工管理系统的设计与实现 11 婚姻Marriagevarchar20noyes 身份证号IdentityIDvarchar18noyes 政汉面貌Politicsvarchar20noyes 民族Folkvarchar20noyes 学历Educationvarchar20nono 专业Departmentvarchar40nono 毕业时间GraduateDatedatetime8nono 毕业院校Universityvarchar40nono 公积金账号AccumulateIDvarchar20noyes 行政级别AdministrationLevelvarchar20noyes 职务Dutyvarchar40noyes 职称Positionvarchar20noyes 外语语种ForeignLanguagevarchar20nono 外语等级FLLevelvarchar20nono 计算机等级ComputerLevelvarchar20nono 家庭电话Phonevarchar20nono 手机号码MobilePhonevarchar11nono 家庭住址Addressvarchar50nono 在职情况Incumbencyvarchar20noyes 用式形式IncumbencyTypevarchar20noyes 个人简历Resumevarchar400nono 南瑞集团公司员工管理系统的设计与实现 12 表 2 奖惩管理信息表(reward) 名称字段名类型长度主键非空 记录编号RewardNOint4yesyes 员工编号EmployeeIDvarchar6noyes 职称Positionvarchar20noyes 奖/惩RewardPunishvarchar10noyes 奖惩内容Rewardcontentvarchar50noyes 原因Reasonvarchar100noyes 批准部门Branchvarchar40noyes 审核人HandleNamevarchar20noyes 开始时间StartDatedatetime8noyes 撤销时间CancelDatedatetime8nono 撤销原因CancelReasonvarchar100nono 备注Remarkvarchar400nono 表 3系统用户管理表(users) 名称字段名类型长度主键非空 用户名UserNamevarchar16yesyes 密码Passwordvarchar16noyes 表 4 人事调动管理信息表(translate) 名称字段名类型长度主键非空 记录编号TranslateNOint4yesyes 员工编号EmployeeIDvarchar6noyes 调动时间TranslateDatedatetime8noyes 前部门PriorBranchvarchar40noyes 现部门NextBranchvarchar40noyes 前职务PriorDutyvarchar40noyes 南瑞集团公司员工管理系统的设计与实现 13 现职务NextDutyvarchar40noyes 经办人HandleNamevarchar20noyes 备注Remarkvarchar400nono 3.2.4 数据库连接与访问 数据库连接和访问主要由类 DBConnect 负责, 用户使用此类进行连接和访 问数据库,其主要实现代码摘录如下: package staff.database; import java.sql.*; public class DBConnect private String dbUrl; private String password; private String username; private String jdbcClassName; private Connection conn = null; private Statement stmt = null; public DBConnect() throws Exception dbUrl=“jdbc : microsoft : sqlserver : /0 : 1433;DatabaseName=jdbc“; jdbcClassName= “com.microsoft.jdbc.sqlserver.SQLServerDriver“; username = “sa“; password = “sa“; connect(); public DBConnect( String inUrl, String inJdbcClassName, String inUserName, String inPassWord ) throws Exception 南瑞集团公司员工管理系统的设计与实现 14 dbUrl = inUrl; jdbcClassName = inJdbcClassName; username = inUserName; password = inPassWord; connect(); private boolean connect()throws Exception boolean opened = false; Driverdriver=(Driver) Class.forName(jdbcClassName).newInstance(); DriverManager.registerDriver(driver); conn=DriverManager.getConnection(dbUrl ,username , password); stmt = conn.createStatement (); opened = true; return opened; public Connection getDBConnection() return conn; public ResultSet executeQuery(String sql) throws SQLException if (stmt != null) return stmt.executeQuery(sql); 南瑞集团公司员工管理系统的设计与实现 15 else return null; public void executeUpdate(String sql) throws SQLException if (stmt != null) stmt.executeUpdate(sql); public void close() throws Exception if (stmt != null) stmt.close(); stmt = null; if (conn != null) conn.close(); 数据库访问如下: DBConnect dbc = new DBConnect(); Connection conn =dbc.getDBConnection(); Statement stmt = null; ResultSet rs = null; stmt=conn.createStatement(); 查询语句为: rs = stmt.executeQuery(sql); /sql 为查询语句 插入、更新语句为:stmt.executeUpdate(sql); 南瑞集团公司员工管理系统的设计与实现 16 3.3 系统中的 JavaBean 结构 本系统 JavaBean 的目录和包的结构如图 8 所示。 图 8 管理系统的 JavaBean 结构图 图 9 管理系统的包结构图 3.4 公共模块 本系统的公共模块如图 10 所示,其内容都是由许多页面共同拥有的,其中 包含 JavaScript 文件,JSP 文件,和 CSS 样式表。 南瑞集团公司员工管理系统的设计与实现 17 4 系统实现 4.1 登录模块 登录模块用来难用户的合法性,防止非法用户进入员工管理系统,其结构如 图 11 所示: 登录模块 验证用户 ChkLogin.jsp 登录界面 login.jsp 图 11 登录模块结构图 4.1.1 实现效果 用户登录模块是用户进入主页面的入口,其运行结果如图 12 所示。 公共模块 导入类包文件 页面头和尾文件 JavaScript 文件 防止非正常登录 CSS 样式表 Common.jsp Style.css Calendar-win2k-1.css Header.jsp Footer.jsp Calensdar.js Calendar-en.js Calendar-setup.js Check.jsp 图 10 公共模块结构图 南瑞集团公司员工管理系统的设计与实现 18 图 12用户登录模块实现效果 图 13 提示输入用户名 图 14 输入错误信息提示 南瑞集团公司员工管理系统的设计与实现 19 如果用户没有输入用户名或者密码,而单击登录按钮,系统会弹出对话框提 示用户如图 13 所示。输入用户名和密码后,系统会判断输入的用户信息。如果 信息错误,则会给出提示信息“用户名或密码不正确”如图 14 所示。 4.1.2 相关 JavaBean 程序 业务模型的设计主要定义了类 User.java,相关 JSP 文件中的业务处理代码 从用户接收登录请求,将模型与视图匹配在一起,从而实现对管理用户信息的验 证。 4.1.3 相关文件 本模块主要涉及到两个页面:login.jsp、ChkLogin.jsp 4.2 主页面模块 4.2.1 实现效果 主页面是用户通过身分验证后进入的页面, 也是操作员工信息管理系统各功 能的平台,可以在该模块中管理人员档案信息,奖惩信息,人员调动信息等,其 结构如图 15 所示,效果如图 16 所示: 主页面模块 ModifyPasswordStep1.jsp ModifyPasswordStep2.jsp 退出系统 Logout.jsp 主页 index.jsp 修改密码 页面左部 Left.jsp 图 15 主面面模块结构图 南瑞集团公司员工管理系统的设计与实现 20 图 16 主页面效果 4.2.2 主页面相关 JSP 文件 相关的 JSP 文件主要有: Index.jsp, Logout.jsp , Header.jsp, Footer.jsp, ModifyPasswordStep1.jsp, ModifyPasswordStep2.jsp。 南瑞集团公司员工管理系统的设计与实现 21 4.3 人员档案模块 人员档案是人事管理系统的基本数据资料,是员工管理系统的基本功能,其 提供的功能有:添加人员档案,修改人员档案,删除人员档案和查询人员档案。 其模块结构如图 17 所示: 人员档案模块 查询人员档案 管理人员档案 添加人员档案 模块主页面 Employee.jsp EmployeeLeft.jsp AddEmployeeStep2.jsp AddEmployeeStep1.jsp ManageEmployeeStep1.jsp ManageEmployeeStep2.jsp ModifyEmployeeStep1.jsp ModifyEmployeeStep2.jsp DelEmployeeStep1.jsp SearchEmployeeStep1.jsp SearchEmployeeStep2.jsp ViewEmployeeStep1.jsp 图 17 人员档案模块结构图 南瑞集团公司员工管理系统的设计与实现 22 图 19 管理人员档案页 4.3.1 实现效果 图 19 管理人员档案页 图 18 添加人员档案页面 南瑞集团公司员工管理系统的设计与实现 23 图20 查看人员档案页面 南瑞集团公司员工管理系统的设计与实现 24 4.3.2 相关 JavaBean 程序 业务模型的设计主要定义了类 Employee.java,相关 JSP 文件中的业务处理 代码用以从用户接收增加、修改、删除、查询等请求并作出相应操作,其中,方 法 Add()用于添加人员档案,Modify()用于修改人员档案,Delete(String _EmployeeID)用于删除人员档案,ListAll()用于列出所有人员档案,Search() 用于查询人员档案,并将操作结果在新的页面中显示出来。 4.3.3 相关 JSP 文件 本模块包含的 JSP 文档及其功能如下: Employee.jsp 功能与 index.jsp 类 似, EmployeeLeft.jsp 用于显示本模块网页的功能链接。 图 21 档案修改成功 AddEmployeeStep1.jsp 主要用于提供用户输入人员档案信息的界面, AddEmployeeStep2.jsp 则用于显示控制器操作结果的表单。 ManageEmployeeStep1.jsp 主要用于显示人员管理的条件查询页面, ManageEmployeeStep2.jsp 则用于显示控制器操作结果的表单, 单击列表中的 “修改”链接如图 19 所示则进入 ModifyEmployeeStep1.jsp 页面,此页面提供 修改人员信息功能,单击修改按钮后,则向控制器提交表单,控制器作出相应处 南瑞集团公司员工管理系统的设计与实现 25 理,并将最终结果成功与否显示在新页面,如果更新成功刚显示“修改人员档案 成功” ,否则显示“修改人员档案失败! ”并将错误显示在页面中,如图 21 所示。 如果单击图 19 中的删除链接,刚进入 DelEmployeeStep1.jsp 页面,实现删除操 作。 SearchEmployeeStep1.jsp 页面,主要用于查询人员档案,在管理人员档案 操作中,既使用其来进行数据库查询,SearchEmployeeStep2.jsp 则用于显示查 询结果列表,由于员工信息较多,因此只选取部分显示,如需查看详细信息,则 可 单 击 员 工 编 号 , 并 调 用 控 制 器 实 现 详 细 信 息 查 询 , 并 将 结 果 在 ViewEmployeeStep1.jsp 页面中显示。如图 20 所示。限于篇幅有限,这里就不 一一列举各文件的主要操作代码。 4.4 奖惩管理模块 奖惩管理模块主要用于记录企业员工的奖惩情况, 其主要提供的功能有添加 奖惩记录和修改奖惩记录。奖惩管理模块的结构如图 22 所示: Reward.jsp RewardLeft.jsp DelRewardStep1.jsp AddRewardStep1.jsp AddRewardStep2.jsp ManageRewardStep1.jsp ModifyRewardStep1.jsp ModifyRewardStep2.jsp ViewRewardStep1.jsp 奖惩管理模块 模块主页面 添加奖惩记录 管理奖惩记录 图 22 奖惩管理模块结构图 南瑞集团公司员工管理系统的设计与实现 26 4.4.1 实现效果 图 23 添加奖惩记录 图 24 管理奖惩记录 南瑞集团公司员工管理系统的设计与实现 27 图 25 查看奖惩记录 4.4.2 相关 JavaBean 程序 业务模型的设计主要定义了类 Reward.java,相关 JSP 文件中的业务处理代 码用以从用户接收增加、 修改、 删除、 查询等请求并作出相应操作, 其中, FindByNO () ,该方法主要用于实现根据记录号查找奖惩信息,用于整体查询;Add() , 主要用于实现奖惩记录的添加操作;Modify() ,主要实现奖惩信息的修改操作; Delete()实现删除操作;SearchByID()通过员工编号进行查询操作,主要用 于一般查询。ListAll( ),主要用于列出查询结果。将操作结果在新的页面中显 示出来。 4.4.3 相关 JSP 文件 本模块主要包含页面关系如图 22 的结构图所示,其中 Reward.jsp 功能与 index.jsp 作用相似,RewardLeft.jsp 作用是提供了本模块的功能链接,如添加 奖惩记录,管理奖惩记录和退出系统。 南瑞集团公司员工管理系统的设计与实现 28 添加奖惩记录主要由AddRewardStep1.jsp和AddRewardStep2.jsp两个文件 组成,其中前者提供了添加记录的界面,如图 23 所示,后者则用于显示控制器 操作结果的表单。 管理奖惩记录主要由 ManageRewardStep1.jsp、ManageRewardStep2.jsp、 ModifyRewardStep1.jsp、ModifyRewardStep2.jsp、ViewRewardStep1.jsp 和 DelRewardStep1.jsp 五个文件组成,其中 ManageRewardStep1.jsp 用于显示管 理 奖 惩 记 录 界 面 如 图 24 所 示 , 当 单 击 图 中 的 修 改 链 接 后 , 则 进 入 ModifyRewardStep1.jsp 页面,该页面表单和图 23 类似,当点击修改按钮时刚 进入 ModifyRewardStep2.jsp 页面, 该页面用于显示控制器操作数据库后返回的 最终修改结果。如点击删除链接,系统会提示是否确认删除操作,单击确定后则 进行删除操作,并返回删除结果,并在 DelRewardStep1.jsp 页面中显示操作的 结果;如点击员工编号,则可进入 ViewRewardStep1.jsp 表单页面,显示该员工 的详细奖惩信息。如图 25 所示。 4.5 人员调动管理模块 人员调动管理模块主要用于记录企业员工的人员调动情况, 其主要提供的功 能有添加人员调动记录和修改人员调动记录。人员调动管理模块的结构如图 26 所示: 人员调动管理模块 模块主页面 添加人员调动 管理人员调动 Translate.jsp TranslateLeft.jsp DelTranslateStep1.jsp AddTranslateStep1.jsp AddTranslateStep2.jsp ManageTranslateStep1.jsp ModifyTranslateStep1.jsp ModifyTranslateStep2.jsp ViewTranslateStep1.jsp 图 26 人员调动管理模块结构图 南瑞集团公司员工管理系统的设计与实现 29 4.5.1 实现效果 图 27 添加人员调动页面效果 图 28 管理人员调动页面效果 南瑞集团公司员工管理系统的设计与实现 30 图 29 查看人员调动页面效果 4.5.2 相关 JavaBean 程序 业务模型的设计主要定义了类 Translate.java,相关 JSP 文件中的业务处 理代码用以从用户接收增加、修改、删除、查询等请求并作出相应操作,其中, FindByNO() ,该方法主要用于实现根据记录号查找人员调动信息,用于整体查 询;Add() ,主要用于实现人员调动记录的添加操作;Modify() ,主要实现人 员调动信息的修改操作;Delete()实现删除操作;SearchByID()通过员工编 号进行查询操作,主要用于一般查询。ListAll( ),主要用于列出查询结果。将 操作结果在新的页面中显示出来。 4.5.3 相关 JSP 文件 本模块主要包含页面关系如图 26 的结构图所示,其中 Translate.jsp 功能 与 index.jsp 作用相似,TranslateLeft.jsp 作用是提供了本模块的功能链接, 如添加人员调动记录,管理人员调动记录和退出系统。 添 加人员调动记 录主要由AddTranslateStep1.jsp和 AddTranslateStep2.jsp 两个文件组成,其中前者提供了添加记录的界面,如图 南瑞集团公司员工管理系统的设计与实现 31 27 所示,后者则用于显示控制器操作结果的表单。 管 理 人 员 调 动 记 录 主 要 由ManageTranslateStep1.jsp , ManageTranslateStep2.jsp,ModifyTranslateStep1.jsp, ModifyTranslateStep2.jsp,ViewTranslateStep1.jsp和 DelTranslateStep1.jsp 五个文件组成,其中 ManageTranslateStep1.jsp 用于 显示管理人员调动记录界面如图 28 所示,当单击图中的修改链接后,则进入 ModifyTranslateStep1.jsp 页面,该页面表单和图 23 类似,当点击修改按钮时 刚进入 ModifyTranslateStep2.jsp 页面,用于显示控制器操作数据库后返回的 最终修改结果。如点击删除链接,系统会提示是否确认删除操作,单击确定后则 进行删除操作,并返回删除结果,并在 DelTranslateStep1.jsp 页面中显示操作 的结果;如点击员工编号,则可进入 ViewTranslateStep1.jsp 表单页面,显示 该员工的详细人员调动信息。如图 29 所示。 4.6 企业员工管理系统文件结构图 (见图 30) 南瑞集团公司员工管理系统的设计与实现 32 图 30 企业员工管理系统文件结构图 4.7 技术难点 4.7.1 FOREIGN KEY 约束 外键 (FK) 是用于建立和加强两个表数据之间的链接的一列或多列。 通过将 保存表中主键值的一列或多列添加到另一个表中,可创建两个表之间的链接。这 个列就成为第二个表的外键。当创建或更改表时可通过定义 FOREIGN KEY 约束 来创建外键。 南瑞集团公司员工管理系统的设计与实现 33 图 31 employee 表截图(EmployeeID 为主键) 图 32 reward 表截图(RewardNO 为主键) 图 33 translate 表截图(TranslateNO 为主键) 图 34 删除人员档案时的警告窗口 例如,数据库 jdbc 中的 employee 表(图 31)与 reward 表(图 32)、employee 与 translate 表(图 33)都有链接,因为在员工档案信息和奖惩信息、调动信息 之间都存在逻辑关系。reward 表中的 EmployeeID 列与 employee 表中的主键列 相对应。employee 表中的 EmployeeID 列是到 reward 表的外键。如果主键表 南瑞集团公司员工管理系统的设计与实现 34 (employe)中存在外键表(reward 和 translate)的数据,则外键表不能删除这条 数据,这是为了保证数据的合法性。所以在删除人员档案 DelEmployeeStep1.jsp 中,对操作进行警告,如图 34。如果确定该操作,数据库内部将进行以下操作: (1)先删除该员工的奖惩信息; (2)其次删除该员工的调动信息; (3)最后删除该员工的人员档案。 相关代码如下: /删除人员档案 try Stringemployeeid=new String(request.getParameter(“employeeid“) .getBytes(“ISO8859_1“), “GBK“); /首先删除该员工的奖惩档案 Reward reward = new Reward(); Vector listreWard = Reward.SearchByID(employeeid); for (int i = 0; i listreWard.size(); i+) reward = (Reward) listreWard.elementAt(i); String rewardno = reward.getRewardNO(); if(!(rewardno.equals(“null“) Reward.Delete(rewardno); /其次删除人员调动档案 Translate translate = new Translate(); 南瑞集团公司员工管理系统的设计与实现 35 Vector listTranslate= Translate.SearchByID(employeeid); for (int i = 0; i listTranslate.size(); i+) translate = (Translate) listTranslate.elementAt(i); String translateNO = trans

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论