基于Java web的员工管理系统设计与实现

摘 要

本文以员工工资管理系统的实际应用需要出发,搭建基于MVC开发的员工工资管理系统来改善目前工资管理流程繁琐,员工工资统计不到位等问题。不仅如此以操作者的角度来说,该系统的架构能够对员工工资情况进行有效的统计。
本系统是利用Eclipse开发工具,JSP技术和MYSQL数据库实现员工工资管理系统。在做项目时,基于以上的问题,对其进行深度剖析,并且将剖析出来的内容在本文中详尽的撰写下来。完成该步骤以后就可以开始着手进行系统的整体架构工作,然后进一步细化完成各个功能板块的架构规划。在进行系统开发过程中,较为关键的部分是数据库的架构,数据添加、删除、修改和检查功能板块的现实以及实现状态,然后再将源码编译出来并予以展示。在完成大致的系统开发以后需要对整个系统进行全方位的检测,尽可能的寻出系统中存在的问题。使用Java语言和MYSQL数据库,以管理员角色登入系统能够更加轻松简易的完成对系统内部所有的数据信息(员工工资相关基础信息,员工考勤信息,员工请假信息,员工奖罚信息等)的管控工作。

关键词:Eclipse开发工具;JSP技术;Java语言;MySQL数据库;工资管理系统

Abstract

Based on the practical application of employee salary management system, this paper builds an employee salary management system developed based on MVC to improve the current salary management process is cumbersome, and employee salary statistics is not in place.Not only from the operator’s perspective, the architecture of the system can make effective statistics on employees’ salaries.
This system uses Eclipse development tools, JSP technology and MYSQL database.When doing the project, based on the above problems, the in-depth analysis, and the analysis of the content in this article detailed writing down.After completing this step, you can start the overall architecture of the system, and then further refine the architecture planning of each functional plate.In the process of system development, the key part is the database architecture, data add, delete, modify and check the reality and implementation status of the functional plate, and then the source code is compiled and displayed.After the completion of the general system development, the whole system needs to conduct a full range of detection, as far as possible to find out the problems existing in the system.Using Java language and MYSQL database, login to the system as the role of administrator can more easily and easily control all internal data information (basic information related to employee salary, employee attendance information, employee leave information, employee reward and punishment information, etc.).

Key words: Eclipse development tools; JSP technology; Java language; MySQL database; payroll management system

目 录

摘 要 I
Abstract II
目 录 III
1 绪论 1
1.1 研究意义 1
1.2 研究目的 1
1.3 研究内容 1
2 系统开发工具 3
2.1 MVC 3
2.2 JSP技术 3
2.3 Java语言 3
2.4 MySQL数据库 3
3 系统分析 5
3.1系统可行性分析 5
3.1.1 技术可行性 5
3.1.2 运行可行性 5
3.1.3 操作可行性 5
3.2 需求分析 5
4 系统概要设计 9
4.1系统功能模块设计 9
4.2系统业务流程设计 9
4.2.1 用户登录业务流程 9
4.2.2 修改密码业务流程 10
4.2.3 部门信息业务流程 10
4.2.4 通知公告业务流程 11
4.2.5 员工考勤业务流程 12
4.2.6 员工奖惩业务流程 12
4.2.7 员工薪酬业务流程 13
4.3 数据库设计 13
4.3.1 数据库概要设计 13
4.3.2 E-R图向关系模型的转变 14
5 系统实现 18
5.1 实现环境说明 18
5.2 用户登录模块 18
5.3 部门信息管理模块的实现 18
5.4 员工奖罚管理模块的实现 19
5.5 员工考勤管理模块的实现 21
5.6 员工工资管理模块的实现 22
5.7 员工请假管理模块的实现 23
5.8 通知公告管理模块的实现 24
6 系统测试 25
6.1 测试方法 25
6.2 功能模块测试 25
6.3 测试结论 27
结 论 28
致 谢 29
参考文献 30

1 绪论

1.1 研究意义
随着时代的不断发展,我国互联网技术水平显著提升。就企业而言,需要在大环境不断变化的今天进行管理体系的革新,这样才能跟上时代发展步伐。然而员工工资管理系统是一项较为复杂的工作,涉及多个组织、多个层次的协调和共同管理,整个过程需要将管理系统和人员进行全面整合,如此才能推动员工工资快速统计。虽然当前企业在工资计算过程中十分重视考勤的统计,比如对奖惩的重视,但是在实际开展与应用的过程中仍然存在一些问题,因此,如何对这些问题进行科学有效的解决就成为当前需要重点探索的课题。本文在具体研究过程中从多方面入手,针对当前企业管理中员工工资管理系统应用存在的问题进行了分析,阐述了应如何对管理系统体系结构进行设计与应用。基于Web的员工工资管理系统开发与应用,对提高企业开展考勤统计有促进作用。员工工资管理系统的设计与优化,则是在企业管理的视角下,通过Web服务器,对员工工资管理系统的功能进行设计,以此实现员工工资管理系统的应用水平提升。
1.2 研究目的
之所以一直强调要对员工工资管理系统进行大力的研究,主要是因为员工工资管理系统对于学校的体育活动的推进有着十分重要的作用,员工工资管理系统研究的主要目的是能够让管理人员更加科学合理的对数据信息进行处理和归纳,提高整个工作的效率,通过这样的方式能够进一步推进企业员工工资得到更好的管理和实施。对于企业的员工工资相关信息的管理来说,员工工资管理系统是十分有效的一个途径,也正是因为这样的特殊性使得在对员工工资进行管理和推进的过程中,能够进一步提升员工工资的统计水平。
员工工资管理系统工作是一项较为综合且复杂的工作,该项工作由多人多层次协同来完成,在具体的管理业务中任何一个环节出现问题都会对整体造成较为严重的影响。每个环节都存在大量的数据信息,因此,信息技术对员工工资的管理有着十分重要的意义。
1.3 研究内容
第一,友好界面。员工工资管理系统开发设计,界面的友好性比较重要,满足这一要求才能体现出人性化设计特征,和用户应用系统便捷性相适应,动态的人机交互设计,用户应用系统的时候能感受到操作的便利, 提高用户的体验良好感受,才能有助于将系统开采设计的作用价值充分发挥出来 [2]。
第二,稳定性要求。开发设计的员工工资管理系统,需要保持其稳定,系统应用稳定才能有助于各项管理工作高效率完成,提升系统使用体验度。系统运行保障因外部异常造成系统崩溃,系统发生问题后数据能及时备份,第一时间恢复数据信息,保障系统良好运行。
第三,可扩展性。员工工资管理系统的开发设计,需要满足可扩展性的要求,系统的设计需要考虑未来系统业务扩展问题,在测试不断应用下,功能需求会不断扩展,通过良好扩展性作用发挥,满足多样化的需要。
第四,满足需求。为能有效加强对大用户的需求,在开发员工工资管理系统的过程中,要能和实际应用的需求紧密对接,保障系统的实用性 [3]。系统开发要能有前瞻性,由于员工工资管理系统建设是长期工程,不同阶段需要有先导发展蓝图以及行动纲领为指导。系统的开发要能满足灵活性应用的需要,将系统的价值充分发挥出来。

2 系统开发工具

2.1 MVC
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
2.2 JSP技术
JSP技术是sun公司所开发的,对于sun公司开发JSP技术来说,它通过将各个平台的设备和信息规范化的处理,通过个性化的方式将这些技术进行集成开发,JSP技术的开发在网络技术的发展中占据着非常重要的意义。通过JSP技术可以实现以往通过其他技术实现不了的功能,因此JSP技术在sun公司的开发下实现了信息领域的大幅度跨度,通过JSP技术可以实现以往不能实现的各项功能,在实际的使用过程当中可以实现用户无论任何时间,任何地点都可以对于信息进行交换。这种大型的互联网服务,使得每一个人在使用智能设备的过程中,都可以利用智能型设备来为自己的生活更好的服务,提高自己的生活质量,在JSP技术开发成熟之后,会使得人们没有闲暇的时间去处理信息分析,或者在实际使用过程当中可以不对数据进行分析,只要相关的智能设备听到了相关的数据传输过程,就可以对相关知识进行查找,高效的为我们寻找到更专业的知识。
2.3 Java语言
Java程序在计算机的程序应用过程当中是非常重要的一个应用软件,因为它的性能比较高,而且能够应用在多重领域当中,因此该程序在计算机的软件程序应用当中的范围相对来说是比较广泛的。而从专业的技术角度来说,Java程序的应用的实用性也是非常强的,这是因为它与传统的C语言或C++相比没有太大的基本结构的变化,也就是说它的语法结构是相对单一,而且具有稳定的特性,还有更重要的一点是Java程序语言的基本参考对象就是C语言,所以他的程序编写并不是很复杂,而且还能够起到优化工作效率提升系统设计本身的基础功能的作用,因此他也就受到了非常广泛的程序员们的青睐[5]。
2.4 MySQL数据库
系统使用MySQL作为其数据库,MySQL是Microsoft中相对较好的数据库系统,适用于中小型数据库。MySQL是一个小巧且精致的数据库,完全网络化的跨平台使用。通用数据库可以从两个方面进行展开研究,这里是依据其是否存在关系将其划分为两类,也就是关系型数据库和非关系型数据库。之所以使用MySQL,是因为它可以容纳很多用户同时进行访问,并且会对数据进行分类处理,然后存在对应的表中。MySQL代码是免费的代码,允许其他人收集和再次便编译升级供使用者使用。这个特点可以降低用户开发系统的开销,并使用配套的软件构建更好的网站系统。尽管MySQL有点缺憾,但是在目前开发大潮流下,它还是被使用次数最多的数据库。 并且支持各种操作系统功能,例如AIX,FreeBSD,HP-UX,Linux,Mac OS,NovellNetware,OpenBSD,OS / 2 Wrap,Solaris,Windows等;API可以满足多种语言的编译和分析;在对CPU资源的配置上,使用多线元程序实现对数据的分析和整合;提供TCP / IP,ODBC,JDBC以及不同外界程序的编辑接口,在数据信息共享上发挥着重要的作用;针对海量且复杂的数据处理有着很好的作用。结合上述的研究得知,MySQL可以满足用户和一般网站的数据管理,在系统管理结构优化升级上具有很好地效果,而且因为MySQL可以满足开放性源代码的分析,因此在数据的分析和系统设计上效率高、科学性好[5]。

3 系统分析

3.1系统可行性分析
3.1.1 技术可行性
对于本课题所设计的员工工资管理系统来讲,考虑到技术的成熟性并结合个人的掌握水平,可不考虑新技术的融合,在此基础上综合考虑采用JSP技术+MySQL数据库来开发系统,且当前所要被采用的开发技术已被大量的企业信息化系统所验证,由此在技术上是可行的。
3.1.2 运行可行性
任何一个系统应用的开发,设计完成以后再投入到市场上之后,能否受到广大用户群体的欢迎和青睐,主要要看其操作的复杂程度是否符合当下用户的操作习惯和整体需求,而所设计开发的员工工资管理系统的操作就比较简单,没有过于复杂的界面和功能模块的应用使得用户一眼就能够看出自己所需要的服务内容,然后通过点击相应的功能按钮来实现在线操作。
3.1.3 操作可行性
该系统一直秉持着操作要精良、代码要短小精悍,代码越短它就越优美,操作越简单用的人就越多,只要是台正常的pc,都能把这个软件给运行起来,可以说次软件对系统配置的要求为零,在操作方面没有任何要求,只要会简单的指指点点就能运用自如,不过电脑要连上网线,因为该系统是个联网的软件,操作员只要掌握住工作流程,根据说明书上面的步骤来操作就好了。
3.2 需求分析
首先,从用户的角度来说,本员工工资管理系统有二种类型的用户,分别是员工、系统管理员。由于用例图具有正确捕捉用户功能性需求的作用,以下先分别对这二种用户使用用例图进行需求分析,该二种用户对应的用例图如下图所示:
系统管理员用例图如下所示。

图3-1 系统管理员用例图
员工用例图如下所示。

图3-2 员工用例图

根据用例图,对一些重要的用例进行描述。
登录用例描述如下表所示。
表3-1 登录用例描述
用例名称 登录
参与者 系统用户
描述 系统用户填写系统用户名和密码登录系统
前置条件 系统用户已注册
后置条件 系统用户名和密码正确
事件流 (1)系统用户在登录页面输入系统用户名和密码
(2)系统检测系统用户输入的系统用户名和密码
(3)显示登录成功并返回主页面
补充说明 (a)系统检查除密码不正确,返回登录页面
个人信息管理用例描述如下表所示。
表3-2 个人信息管理用例描述
用例名称 管理个人信息
参与者 管理员 员工
描述 查看、修改个人信息
前置条件 已登录
后置条件 无
事件流 (1)查看个人信息
(2)修改个人信息
补充说明 (a)可修改密码
(b)可修改联系方式
部门信息用例描述如下表所示。
表3-3 部门信息管理用例描述
用例名称 部门信息管理
参与者 管理员
描述 提供新增、修改、删除、查阅等功能
前置条件 (1)成功登录系统
(2)只能对已存在的部门信息进行修改和删除
后置条件 无
事件流 (1)查看修改部门信息
(2)添加部门信息
(3)删除部门信息
补充说明 (a)新添加的部门信息不符合要求时会添加失败
(b)修改的部门信息不符合要求时会修改失败
考勤信息用例描述如下表所示。
表3-4 考勤信息用例描述
用例名称 考勤信息理
参与者 员工
描述 提供新增、修改、删除、查阅等功能
前置条件 (1)成功登录系统
(2)只能对已存在的考勤信息进行修改和删除
后置条件 无
事件流 (1)查看修改考勤信息
(2)添加考勤信息
(3)删除考勤信息
补充说明 (a)新添加的考勤信息不符合要求时会添加失败
(b)修改的考勤信息不符合要求时会修改失败
员工信息用例描述如下表所示。
表3-5 员工信息管理用例描述
用例名称 员工信息管理
参与者 管理员
描述 提供新增、修改、删除、查阅等功能
前置条件 (1)成功登录系统
(2)只能对已存在的员工信息进行修改和删除
后置条件 无
事件流 (1)查看修改员工信息
(2)添加员工信息
(3)删除员工信息
补充说明 (a)新添加的员工信息不符合要求时会添加失败
(b)修改的员工信息不符合要求时会修改失败
员工奖惩用例描述如下表所示。
表3-6 员工奖惩管理用例描述
用例名称 员工奖惩管理
参与者 管理员
描述 提供新增、修改、删除、查阅等功能
前置条件 (1)成功登录系统
(2)只能对已存在的员工奖惩进行修改和删除
后置条件 无
事件流 (1)查看修改员工奖惩
(2)添加员工奖惩
(3)删除员工奖惩
补充说明 (a)新添加的员工奖惩不符合要求时会添加失败
(b)修改的员工奖惩不符合要求时会修改失败
员工薪酬用例描述如下表所示。
表3-7 员工薪酬管理用例描述
用例名称 员工薪酬管理
参与者 管理员
描述 提供新增、修改、删除、查阅等功能
前置条件 (3)成功登录系统
(4)只能对已存在的员工薪酬进行修改和删除
后置条件 无
事件流 (1)查看修改员工薪酬
(2)添加员工薪酬
(3)删除员工薪酬
补充说明 (a)新添加的员工薪酬不符合要求时会添加失败
(b)修改的员工薪酬不符合要求时会修改失败
通知公告用例描述如下表所示。
表3-8 通知公告管理用例描述
用例名称 通知公告管理
参与者 管理员
描述 提供新增、修改、删除、查阅等功能
前置条件 (5)成功登录系统
(6)只能对已存在的通知公告进行修改和删除
后置条件 无
事件流 (1)查看修改通知公告
(2)添加通知公告
(3)删除通知公告
补充说明 (a)新添加的通知公告不符合要求时会添加失败
(b)修改的通知公告不符合要求时会修改失败

4 系统概要设计

4.1系统功能模块设计
员工工资管理系统主要是为员工所服务的,该系统是因他们而存在,要为他们服务,因此,在系统设计时要将他们的需求放在第一位,并且要充分考虑他们的意见。图4-1是其所涉及的系统功能模块图。

图4-1 功能模块图
4.2系统业务流程设计
通过对业务流程的分析主要是服务于接下来的功能模块的编写,特别是对于一个尚未接触到一个行业的程序员,可通过业务流程能够较快速的理解所设计功能的所涉及到的过程与数据如何使用。其主要流程介绍如下。
4.2.1 用户登录业务流程
待用户利用员工工资管理系统只有当登录界面的编辑框能读取到信息且所读取到的信息都正确的情况下,方可登录成功。其用户登录业务流程如下图所示。

图4-2 用户登录业务流程图
4.2.2 修改密码业务流程
用户使用该员工工资管理系统注册完成后,用户对登录密码有修改需求时,系统也可以提供用户修改密码权限。其用户修改密码业务流程如下图所示。

图4-3 修改密码流程图
4.2.3 部门信息业务流程
本员工工资管理系统中提供给员工来查询的基础信息是部门信息,还就是与工资相关的部门信息等,部门信息管理的三种基本操作:一种是完成部门信息的添加,在这里会对部门信息的录入情况来判断;一种是对部门信息的修改,另一种就是对部门信息的删除。其后两种操作都是要建立在第一种操作而生成的部门信息列表的基础上完成的。。其部门信息浏览业务流程如下图所示。

图4-4 部门信息录入业务流程图
4.2.4 通知公告业务流程
本员工工资管理系统中的通知公告管理,管理方式都是对信息的三种基本操作:一种是完成通知公告的添加,在这里会对通知公告的录入情况来判断;一种是对通知公告的修改,另一种就是对通知公告的删除。其后两种操作都是要建立在第一种操作而生成的通知公告列表的基础上完成的。其通知公告的业务流程如下图所示。

图4-5 通知公告业务流程图
4.2.5 员工考勤业务流程
在本员工工资管理系统中员工考勤管理,管理方式都是对信息的三种基本操作:一种是完成员工考勤的添加,在这里会对员工考勤的录入情况来判断;一种是对员工考勤的修改,另一种就是对员工考勤的删除。其后两种操作都是要建立在第一种操作而生成的员工考勤列表的基础上完成的。其报名活动的业务流程如下图所示。

图4-6 员工考勤业务流程图
4.2.6 员工奖惩业务流程
在本员工工资管理系统中员工奖惩管理,管理方式都是对信息的三种基本操作:一种是完成员工奖惩的添加,在这里会对员工奖惩的录入情况来判断;一种是对员工奖惩的修改,另一种就是对员工奖惩的删除。其后两种操作都是要建立在第一种操作而生成的员工奖惩列表的基础上完成的。其报名活动的业务流程如下图所示。

图4-7 员工奖惩业务流程图
4.2.7 员工薪酬业务流程
在本员工工资管理系统中员工薪酬管理,管理方式都是对信息的三种基本操作:一种是完成员工薪酬的添加,在这里会对员工薪酬的录入情况来判断;一种是对员工薪酬的修改,另一种就是对员工薪酬的删除。其后两种操作都是要建立在第一种操作而生成的员工薪酬列表的基础上完成的。其报名活动的业务流程如下图所示。

图4-8 员工薪酬业务流程图

4.3 数据库设计
4.3.1 数据库概要设计
借助先进的系统,ER图使其他用户可以快速轻松地了解系统的功能以及他们之间的关系。 根据员工工资管理系统的系统分析结果,整个系统包括以下各个单元:管理员,员工,通知公告表,员工考勤,员工奖罚,员工薪酬等。
系统E-R图如图4-9所示:

图4-9 系统E-R图
4.3.2 E-R图向关系模型的转变
数据库是员工工资管理系统的数据处理的基础,也是为界面数据的展示与存储的关键。员工工资管理系统的数据库表如下。
管理员allusers表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 username VarChar 50 是 255
3 pwd VarChar 50 是 255
4 cx VarChar 50 是 255
5 addtime DateTime 8 是 23

部门信息bumenxinxi表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 bumen VarChar 50 是 255
3 jingli VarChar 50 是 255
4 renshu VarChar 255 是 255
4 zhuyaozhize VarChar 255 是 255
4 shuoming VarChar 255 是 255
6 addtime timestamp 8 是 23
考勤信息kaoqin表
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 yuangonggonghao VarChar 50 是 255
3 xingming VarChar 50 是 255
4 xingbie VarChar 50 是 255
5 bumen VarChar 50 是 255
6 zhiwu VarChar 50 是 255
6 kaoqinriqi VarChar 50 是 255
7 kaoqinqingkuang VarChar 50 是 255
8 dengjiren VarChar 50 是 255
20 addtime timestamp 8 是 23

请假信息qingjia表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 danhao VarChar 50 是 255
3 qingjiayuanyin VarChar 50 是 255
4 qingjiariqi VarChar 50 是 255
5 tianshu VarChar 50 是 255
6 yuangonggonghao VarChar 50 是 255
7 xingming VarChar 50 是 255
8 bumen VarChar 50 是 255
9 zhiwu VarChar 50 是 255
10 shouji VarChar 50 是 255
11 beizhu VarChar 50 是 255
12 issh VarChar 50 是 255
13 addtime timestamp 8 是 23

通知公告表tongzhigonggao表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 biaoti VarChar 50 是 255
3 leibie VarChar 50 是 255
4 fujian VarChar 50 是 255
5 neirong VarChar 50 是 255
6 faburen VarChar 50 是 255
7 addtime timestamp 8 是 23

员工奖惩jiangcheng表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 yuangonggonghao VarChar 50 是 255
3 xingming VarChar 300 是 255
4 bumen VarChar 50 是 255
5 zhiwu VarChar 50 是 255
6 xingbie VarChar 50 是 255
7 riqi VarChar 500 是 255
8 fenlei VarChar 50 是 255
9 yuanyin VarChar 300 是 255
9 jieguo VarChar 300 是 255
9 dengjiren VarChar 300 是 255
10 beizhu VarChar 50 是 255
11 addtime timestamp 8 是 23

工资表gongzi表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 yuangonggonghao VarChar 50 是 255
3 mima VarChar 300 是 255
4 xingming VarChar 50 是 255
5 xingbie VarChar 50 是 255
6 bumen VarChar 50 是 255
7 zhiwu VarChar 500 是 255
8 yuefen VarChar 50 是 255
9 jibengongzi VarChar 300 是 255
10 jixiaogongzi VarChar 50 是 255
11 kaoqingongzi VarChar 50 是 255
12 jiangjin VarChar 255 是 255
13 qita VarChar 255 是 255
13 gongzizonge VarChar 255 是 255
13 gongzishuoming VarChar 255 是 255
13 dengjiren VarChar 255 是 255
13 beizhu VarChar 255 是 255
14 addtime timestamp 8 是 23

员工信息yuangong表:
序号 字段名称 字段类型 大小 允许为空 最大长度 备注
1 ID Int 4 自增编号 10
2 yuangonggonghao VarChar 50 是 255
3 mima VarChar 300 是 255
4 xingming VarChar 50 是 255
5 xingbie VarChar 50 是 255
6 bumen VarChar 50 是 255
7 zhiwu VarChar 500 是 255
8 nianling VarChar 50 是 255
9 shenfenzheng VarChar 300 是 255
10 shouji VarChar 50 是 255
11 youxiang VarChar 50 是 255
12 dizhi VarChar 255 是 255
13 beizhu VarChar 255 是 255
14 addtime timestamp 8 是 23

猜你喜欢

转载自blog.csdn.net/ambiguous__/article/details/129673082