企业人事管理系统毕业论文.docx
《企业人事管理系统毕业论文.docx》由会员分享,可在线阅读,更多相关《企业人事管理系统毕业论文.docx(28页珍藏版)》请在冰豆网上搜索。
企业人事管理系统毕业论文
(此文档为word格式,下载后您可任意编辑修改!
)
2013届本科毕业论文(设计)
题目:
基于Java的人事管理系统设计与实现
系别:
信息工程学院
班级:
2011级计算机科学与技术(软件技术方向)
学号:
XXXXXXXX
姓名:
XXXX
指导教师:
XXXX职称讲师
起讫日期:
2012年10月16日-2013年5月31日
基于Java的人事管理系统设计与实现
XXXX
三明学院信息工程学院2011级计算机科学与技术(软件方向)
摘要:
随着计算机的逐步发展、复杂度逐渐变强,人工作业已经无法适应现代的管理,随之取代的是计算机科学而开发的人事管理系统,而且一个良好的人事管理系统势在必行。
人事管理系统是对工作人员进行统一的管理,可以方便的进行录入、查询、删除、修改等操作。
其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于前者要求建立起数据一致和完整性强、数据安全性好的数据库。
而对于后者则要求应用程序功能完备,易使用等特点。
按照系统的基本功能,系统的开发可以归结为软件开发技术和数据库应用技术。
目前主要的软件编程语言有Java、C#、C++等,本系统主要采用Java语言为开发技术。
在数据库的选择上,为了用户友好的查询和强大的搜索能力,采用Microsoft公司的Access作为数据库平台。
设计流程从系统的需求分析开始,确定系统的流程与模块的划分,再到数据库设计,最后开始每个模块的编程。
关键词:
人事管理系统;java语言;Access
第一章绪论2
1.1信息化的发展2
1.2课题的研究背景2
1.3课题的研究目的3
1.4系统开发关键技术与开发环境3
1.4.1JAVA语言简介3
1.4.2JAVA的优势与特点4
1.5MyEcpse的特点与开发环境4
1.6运行环境和开发工具5
第二章需求分析5
2.1系统需求分析5
2.2功能分析6
2.3可行性分析6
2.3.1经济可行性6
2.3.2技术可行性6
2.3.3操作可行性7
第三章系统设计7
3.1结构设计7
3.2功能结构图7
3.3功能流程及工作流描述8
第四章数据库设计10
4.1数据库表设计10
4.2数据库E-R图设计11
第五章详细设计12
5.1系统登录界面12
5.2人事管理系统主界面模块13
5.3基础信息管理模块13
5.3.1添加人员信息模块14
5.3.2修改人员信息模块15
5.3.3删除人员信息模块15
5.3.4查询人员信息模块16
5.3.5部门管理模块16
5.4人员调动管理模块17
5.4.1人员调动模块17
5.4.2调动历史查询模块18
5.5人员考核管理模块18
5.5.1调动历史查询模块19
5.5.2调动历史查询模块19
5.6劳资管理模块20
5.6.1劳资分配管理模块21
5.6.2劳资历史查询模块21
第六章系统调试22
6.1程序调试22
6.2程序的测试22
6.2.1测试的重要性和目的22
6.2.2测试方法设计22
第七章总结23
参考文献23
致谢24
第一章绪论
1.1信息化的发展
随着人类迈入二十一世纪,计算机技术、通信技术、网络技术为代表的现代信息技术的飞跃发展,人类正在从工业时代向信息时代迈进,人们越来越重视信息资源的开发和利用,“信息化”已成为一个国家经济和社会发展的关键环节,信息化水平的高低已成为衡量一个国家现代化水平和综合国力的重要标志,信息化的实质是使信息这一社会的主导资源充分发挥作用,可以说推广信息技术使手段,真正利用信息是目的,信息化则是实现目的的过程。
我国自1983年大力推广微型计算机应用以来,在管理信息领域,无论在理论方面,还是在实践方面都有了很大的发展。
1986年2月国务院批准建设了国家经济信息系统,全国从中央到省、市地方都陆续成立了信息中心,各行各业应用电子计算机的热情普遍高涨。
目前,已从单项业务的信息管理迅速项综合的管理层和决策层的信息管理发展,应用水平日趋提高;已金桥工程、金关工程和金卡工程为代表的国民经济信息工程也正在加速建设。
1.2课题的研究背景
人事管理系统的发展历史可以追溯到20世纪60年代末期。
由于当时计算机技术已经进入实用阶段,同时大型企业用手工来计算和发放薪资既费时费力又非常容易出错,为了解决这个矛盾,第一代的人事管理系统应运而生。
当时由于技术条件和需求的限制,用户非常少,而且那种系统充其量也只不过是一种自动计算薪资的工具,既不包含非财务的信息,也不包含薪资的历史信息,几乎没有报表生成功能和薪资数据分析能力。
但是,它的出现为人事管理的管理展示了美好的前景,即用计算机的高速度和自动化来代替手工的巨大工量,用计算机的高准确性来避免手工的错误和误差,使大规模集中处理大型企业的薪资成为可能。
第二代的人事管理系统出现于20世纪70年代末。
由于计算机技术的飞速发展,无论是计算机的普及性,还是计算机系统工具和数据库技术的发展,都为人事管理系统的阶段性发展提供了可能。
第二代人事管理系统基本上解决了第一代系统的主要缺陷,对非财务的人事管理信息和薪资的历史信息都给予了考虑,其报表生成和薪资数据分析功能也都有了较大的改善。
但这一代的系统主要是由计算机专业人员开发研制的,未能系统地考虑人事管理的需求和理念,而且其非财务的人事管理信息也不够系统和全面。
人事管理系统的革命性变革出现在20世纪90年代末。
由于市场竞争的需要如何吸引和留住人才,激发员工的创造性、工作责任感和工作热情已成为关系企业兴衰的重要因素,人才已经成为企业最重要的资产之一。
"公正、公平、合理"的企业管理理念和企业管理水平的提高,使社会对人事管理系统有了更高的需求;同时由于个人电脑的普及,数据库技术、客户服务器技术,特别是InternetIntranet技术的发展,使得第三代人事管理系统的出现成为必然。
第三代人事管理系统的特点是从人事管理的角度出发,用集中的数据库将几乎所有与人事管理相关的数据统一管理起来,形成了集成的信息源。
友好的用户界面,强有力的报表生成工具、分析工具和信息的共享使得人事管理人员得以摆脱繁重的日常工作,集中精力从战略的角度来考虑企业人事管理规划和政策。
1.3课题的研究目的
随着网络技术的发展,传统的人工管理模式已经不适应当前企业的发展,这种管理方式存在着许多缺点,如:
效率低、保密性差、数据量大、查询等都不方便,而且还会影响企业的发展。
但人事管理系统是一个企业单位不可缺少的部分,所以一个好的人事管理系统会给企业带来更大的发展。
基于Java的人事管理系统适应了当前发展的潮流,作为计算机应用的一部分,使用计算机对人事信息进行管理,具有着手工管理所无法比拟的优点.例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
从另一方面推动了企业的向前发展。
课题的目的是:
针对企事业对人事管理的需求,开发人事管理系统,力求方便快捷实现人事档案的管理,推动企业的向前发展。
1.4系统开发关键技术与开发环境
1.4.1JAVA语言简介
Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。
Java平台由Java虚拟机(JavaVirtualMachine)和Java应用编程接口(ApplicationProgrammingInterface、简称API)构成。
Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。
在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。
现在Java平台已经嵌入了几乎所有的操作系统。
这样Java程序可以只编译一次,就可以在各种系统中运行。
Java应用编程接口已经从1.1x版发展到1.2版。
目前常用的Java平台基于Java1.6。
1.4.2JAVA的优势与特点
1.Java语言是简单的。
Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。
另一方面,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。
特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。
2.Java语言是一个面向对象的。
Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。
Java语言全面支持动态绑定,而C++语言只对虚函数使用动态绑定。
总之,Java语言是一个纯的面向对象程序设计语言。
3.Java语言是可移植的。
这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。
Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSIC实现的。
Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。
Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。
Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。
特别是Java企业应用编程接口(JavaEnterpriseAPIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。
1.5MyEclipse的特点与开发环境
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,它利用我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大地提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML、Struts、JSP、JavaScript、Spring、SQL、Hibernate。
除了由扩展点定义的接口外,插件不知道它们通过扩展点提供的服务将如何被使用。
利用MyEclipse,我们可以将高级设计(也许是采用UML)与低级开发工具(如应用调试器等)结合在一起。
如果这些互相补充的独立工具采用MyEclipse扩展点彼此连接,那么当我们用调试器逐一检查应用时,UML对话框可以突出显示我们正在关注的器件。
MyEclipse的最大特点是它能接受由Java开发者自己编写的开放源代码插件,这类似于微软公司的VisualStudio和Sun微系统公司的NetBeans平台。
MyEclipse为工具开发商提供了更好的灵活性,使他们能更好地控制自己的软件技术。
MyEclipse联盟已经宣布将在2004年中期发布其3.0版软件。
这是一款非常受欢迎的java开发工具,这国内的用户越来越多,实际上实用它java开发人员是最多的。
缺点就是较复杂,对初学者来说,理解起来比较困难。
1.6运行环境和开发工具
硬件环境(推荐):
CPU:
1.70GHZ或以上
内存:
2G或更大
显示器分辨率:
1024x768
软件环境:
(推荐)
操作系统:
win7操作系统
数据库:
Access数据库
Java环境:
JDK1.6
开发工具:
MyEclipse
第二章需求分析
2.1系统需求分析
人事管理系统作为高校行政管理中非常重要的部门之一,担负着学校行政管理职能中的很多具体管理业务,几乎天天与各部门、院系或个人打交道,人事工作效率的高低、质量的优劣都直接关系到管理效率在教职工中的认可度。
因此,高校人事管理要符合并适应高校各类管理事务发转的逻辑和规律,符合教职工的利益诉求。
需要我们将人事工作中一些必要的,常规的程序简约化、标准化,把人事部门从许多冗余的、繁琐的事务性工作中解脱出来,促使人事部门将更多的时间和精力投入理论思考和战略决策中。
通过构建人事管理信息化系统,可以将人事工作的管理职能从人事管理阶段向人力资源管理研究阶段转变,这样人事部门才能有效地提高工作的效率和质量;才能有精力考虑一些战略性的、高附加值的人力资源管理工作;才能打造现代师资管理数字平台,为师资队伍远景规划提供科学的数字依据;才能为学校各部门提供增值服务,为校领导的科学化决策提供重要依据。
为此,高校人事管理系统通常高度集成了新进人员管理模块、组织机构管理模块、教职工信息管理模块、工作简历模块、学习简历模块、家庭信息情况、专业技术职务模块、行政党务职务模块、校内调动管理模块、攻读硕博管理模块、资格培训管理模块、合同信息登记管理模块、考核管理模块、劳资管理模块、退休管理模块、离校管理模块、报表模块和档案管理模块,以此优化业务流程,使数据共享一致。
本系统通过几个核心的模块来实现人事管理系统的基本功能及Java实现。
2.2功能分析
根据人事管理系统的需求分析和软件需要,我们可以将人事管理系统分为几个模块:
基本信息管理模块、人员调动管理模块、人员考核管理模块、劳资管理模块。
各模块的说明如下:
1.基本信息管理:
管理人员的基本信息,包括增加员工信息、修改基础信息、删除员工信息、查询基础信息;维护部门信息,包括增加、修改、删除、查询等操作。
2.人员调动管理:
管理人员的调动情况,记录人员的调动历史并提供查询功能。
3.人员考核管理:
管理人员的考核情况,记录人员的考核历史并提供查询功能。
4.劳资管理:
管理人员的劳资分配情况,记录人员的劳资更改历史并提供查询功能。
2.3可行性分析
2.3.1经济可行性
开发该系统所需的相关资料可以通过已存在的相关系统进行调查采集,所需的其他应用软件、硬件系统也易于获得,因此,开发成本较低。
而引进使用本系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物力及财力。
所以,从经济的角度来看,该系统可行。
2.3.2技术可行性
技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。
本系统用的是Java开发语言,具有Java的“一次编写,随处运行”的优点,所以此系统在不同的操作系统上都可以运行,具有很强的移植性、健全性和安全性。
当前的计算机硬件配置也完全能满足开发的需求,因此在技术上是绝对可行的。
软件方面:
由于目前单机模式相对发展成熟,故软件的开发平台成熟可行,它们速度快、容量大、可靠性能高、价格低,完全能满足系统的需求。
2.3.3操作可行性
操作可行性是对组织结构的影响,现有人员和机构和环境对系统的适应性及人员培训补充计划的可行性。
当前信息化技术已经相当普及,各类操作人员水平都有相当的高度,所以在运行上是可行性的。
第三章系统设计
3.1结构设计
根据对系统进行需求分析,本系统将分为四个模块。
1.基本信息管理:
管理人员基本信息和部门信息,包括人员信息和部门信息的添加、修改、删除、查询。
2.人员调动管理
管理人员调动情况,同时保存人员调动的历史记录,能够查询人员调动记录。
3.人员考核管理
管理人员考核情况,同时保存人员考核的历史记录,能够查询人员考核记录。
4.劳资管理
管理人员薪酬情况,同时保存人员薪酬的历史记录,能够查询薪酬变更记录。
3.2功能结构图
人事管理系统功能结构图如图3.2-1所示
图3.2-1人事管理系统的功能结构
3.3功能流程及工作流描述
1.添加人员信息
用户利用添加人员信息管理模块可以实现人员信息的添加。
当用户输入完整的个人信息后,单击“增加”按钮即可完成人员信息增加。
本程序通过Node11Panel.java实现操作界面,通过PersonBean.java文件进行相关的数据库操作。
2.修改人员信息
用户首先在程序左下角选择要修改信息的人员,选择后,人员的详细信息会显示出来,修改信息后单击“修改”按钮即可完成人员信息的修改。
修改的信息会保存到数据库中。
人员信息修改通过Nodel2Panel.java实现操作界面,通过PersonBean.java文件进行相关的数据库操作。
3.删除人员信息
在显示的表格中选择要删除的人员,单击“删除”按钮即可完成删除任务。
删除的信息会保存到数据库。
人员信息删除Node13Panel.java实现,数据库操作仍是通过PersonBean.java实现。
4.查询人员信息
可以通过Nodel4Panel.java文件实现查询所有人员信息的功能。
5.部门管理
用户利用部门管理模块可以实现部门的增加、修改、删除等操作。
增加信息需要先单击“获取新编号”按钮,填写一级部门名称与二级部门名称后,单击“增加”按钮即可添加新信息;当选择表格中已有的部门信息时,对应的信息会显示在文本框中,即可对选择的信息进行修改与删除操作。
本程序通过Node15Panel.java实现操作界面,通过DeptBean.java文件进行相关的数据库操作。
6.人员调动
程序运行时能够罗列出所有人员的信息,用户在表格中选择了需要进行部门调动的人员后,在右下角选择要调入的新部门并单击“调入新部门”按钮即可完成调动工作。
相应的操作会记录到数据库中。
人员调动模块通过Node21Panel.java文本实现操作界面,调动时首先修改人员信息表(Person)中的部门信息,然后再向历史操作记录表(Histrjn)中添加人员调动记录,因此相应的数据库操作主要通过PersonBean.java和HistrjnBean.java来实现的。
通过Node22Panel.java可以实现查询所有部门调动的历史数据。
7.人员考核
程序运行时能够罗列出所有人员的信息,用户在表格中选择了需要进行考核的人员后,在右下角选择考核结果并单击“确定”按钮即可完成考核工作。
新进人员默认为“未考核”状态。
考核的相关操作会记录到数据库中。
人员考核模块通过Node31Panel.java文本实现操作界面,考核时首先修改人员信息表(Person)中的部门信息,然后再向历史操作记录表(Histrjn)中添加人员考核记录,数据库操作也是通过PersonBean.java和HistrjnBean.java来实现的。
通过Node32Panel.java可以实现查询所有人员考核的历史数据。
8.劳资管理
劳资管理操作与考核、调动管理类似,人员初始化薪酬为“0”,通过劳资管理分配薪酬。
劳资管理通过Node41Panel.java文件实现操作界面,数据库操作也是通过PersonBean.java和HistrjnBean.java来实现的。
通过Node42Panel.java可以实现查询所有劳资分配的历史数据。
第四章数据库设计
4.1数据库表设计
数据库中包含3个表,即人员信息表(Person)、历史操作记录表(Histrjn)和部门管理表(Dept),下面将依次给出各表。
(1)人员信息表(Person):
主要包括人员编号、姓名、性别、出生年月、民族、地址、部门、薪酬、考核、其他。
表4.1-1人员信息表(Person)
(2)历史操作记录表(Histrjn):
主要包括流水编号、操作类型、原始信息、更新信息、变更次数、变更日期、人员编号。
表4.1-2历史操作记录表(Histrjn)
(3)部门管理表(Dept):
主要包括编号、一级部门、二级部门。
表4.1-3部门管理表(Dept)
4.2数据库E-R图设计
图4.2-1人员信息图
图4.2-2历史查询记录图
图4.2-3部门管理图
第五章详细设计
5.1系统登录界面
系统登录界面中用户名选项为数据库中已经存在的用户名,用户名不能为空,所以用户只需选择相应的用户名即可。
如果用户输入的用户名和密码都正确,用户就可以成功登录,登录后马上进入系统主界面。
因此当一个用户或者管理员登录系统之后,用户或管理员操作的流程如图5.1-1所示:
图5.1-1用户的操作流程图
5.2人事管理系统主界面模块
登录成功后系统自动跳转到系统的主界面,人事管理系统主界面模块包括HrMS.java和HrMain.java两个文件。
HrMS是人事管理系统的主运行类,其中有运行整个程序的main方法,该文件生成了HrMain类的一个实例,从而生成了人事管理系统的界面,如图5.2-1所示。
HrMain类继承自JFrame类,实现了事件侦听的接口,它有一个不带参数的构造函数HrMain(),用来生成HrMain的实例。
HrMain类采用树的管理模式,用JSplitPane类将整个界面分为左右两个部分。
其中左侧实现了人事管理系统的功能树,采用JTree类构建,同时实现了TreeSelectionListener接口,定义了该接口所必须实现的valueChanged(TreeSelectionEvente)方法,这样可以处理JTree所产生的事件。
当JTree的TreeSelectionEvent事件发生时,调用JSplitPane的setRightComponent(Componentcomp)方法将定义好的JPanel加入右侧,实现不同的管理界面。
以下为这两个类的代码实现。
图5.1-2进入系统主界面流程图
5.3基础信息管理模块
人事管理系统采用树形管理,基础信息管理模块为其一个节点,下面共有5个叶子。
叶子继承自JPanel。
用以设计不同的管理界面。
定义好界面以后,通过调用JSplitPane的setRightComponent(Componentcomp)方法将JPanel加入右侧。
本系统中,叶子节点采用统一规则命名,如Node12Panel.java为节点一的第二个叶子节点,它所对应的内容为基础信息管理(节点一)模块下的修改人员信息(第二叶子节点)管理,其他的以此类推。
因此,基础信息管理模块主要由五个文件组成,分别对应添加人员信息、修改人员信息、删除人员信息、查询人员信息和部门管理这5个功能模块。
其运行结果如图5.3-1所示
图5.3-1基础信息管理模块运行界面
5.3.1添加人员信息模块
该类用于添加人员信息,继承自JPanel,它实现了ActionListener和ItemListener接口,因此必须覆写actionPerformed(ActionEvente)与itemStateChanged(ItemEvente)方法,以实现基本事件处理与下拉菜单被选择时的事件处理,其实现效果如图5.3-2所示。
5.3-2添加人员信息的运行界面
5.3.2修改人员信息模块
该类用于实现修改人员信息的界面,其运行效果如图5.3-3所示。
5.3-3修改人员信息的运行界面
5.3.3删除人员信息模块
该类用来实现删除人员信息的操作界面,实现了ActionListener和ListSelectionListener接口,因此必须覆写actionPerformed(ActionEvente)与valueChanged(ListSelectionEvente)方法,以实现基本事件处理与JTable列被选择时的事件处理,其运行效果如图5.3-4所示。
5.3-4删除人员信息的运行界面
5.3.4查询人员信息模块
该类用于实现查询人员信息的操作界面,其运行效果如图5.3-5所示。
5.3-5查询人员信息的运行界面
5.3.5部门管理模块
该类用于实现部门管理的界面,主要用于对部门的信息进行添加、修改、删除操作,其运行结果如图5.3-6