《鞍钢附企工贸公司人事管理信息系统23783.docx》由会员分享,可在线阅读,更多相关《鞍钢附企工贸公司人事管理信息系统23783.docx(38页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、摘 要人事管理信信息系统作作为一种新新型的管理理方式,受受到了社会会的广泛关关注,本毕毕业设计以以JSP技术术为基础,设设计实现一一个鞍钢附附企工贸公公司人事管管理信息系系统。系统统主要根据据实际的需需求,以需需求分析、系系统的设计计目标,并并且重点进进行系统功功能模块的的详细设计计和实现,采采用了NEETBEAAN开发平平台和MYYSQL数数据库,实实现了对员员工信息的的管理,对对考勤信息息的管理,对对培训信息息的管理和和对用户登登录密码的的管理等主主要模块。功功能完善,易易于管理。本本论文详尽尽论述了需需求分析、系系统分析、概概要设计、详详细设计、以以及测试与与调试的整整个过程。最最后,总
2、结结了系统的的优缺点以以及未来的的工作。本本系统具有有良好的功功能完备性性,较好的的人机交互互界面,测测试结果表表明,系统统设计已经经达到要求求,具有较较好的实用用价值。关键词:鞍鞍钢附企工工贸公司人人事管理信信息系统 系统开开发 数据库设设计 安全性性目 录第一章引引 言1第二二章需求分析析2第三章总总体设计3第四章详详细设计与与实现6第五章系系统测试15结 论17参考文献17II大连交通大学计算机工程实践第一章 引 言管理信息系系统是700年代初“后后工业经济济时代”的的产物,在在企业管理理信息系统统在其发展展的初期,是是单一的人人-机系统统,系统功功能简单,效效率低,对对管理的作作用有限
3、。进进入20世世纪80年年代末,随随着计算机机网络和通通信技术的的大力发展展,企业管管理信息系系统进入网网络化的发发展时期。世世界发达国国家已建立立起了完善善的先进的的管理信息息系统体系系。他们在在数十年的的实践中积积累了丰富富的管理信信息系统开开发经验,在在企业管理理方面也已已形成了一一套行之有有效的理论论和规范。由由于管理信信息系统本本身及与其其相应的计计算机信息息应用技术术均非常成成熟。几乎乎所有发达达国家均建建立了自己己的人力资资源管理信信息系统,这这个系统是是全国性的的,覆盖了了全国的人人力资源管管理领域。国国外公司的的人事部或或劳工部一一般均建立立了计算机机信息系统统,负责公公司内
4、部的的人力资源源或劳工管管理。所以以,国外的的工资管理理信息系统统的开发与与应用己非非常普及。同同时,由于于发达国家家的人力资资源管理信信息系统已已实现全国国联网,因因此,在社社会经济发发展领域中中发挥着巨巨大的作用用。我国的人力力资源管理理信息系统统大发展是是在80年年代末900年代初,多多数企事业业单位建立立了局域网网和广域网网管理信息息系统。随随着世界经经济和我国国经济逐步步向知识经经济迈进,无无论是基于于工业经济济的管理信信息系统,还还是面向少少数专家和和管理人员员的专家系系统(ESS)或决策策支持系统统(SS),其处理理对象和服服务对象,自自身的系统统结构,处处理能力,都都有了进一一
5、步的发展展。第二章 需求分析目前市面上上流行的人人事管理系系统不少。但但是,对于于企、事业业单位的人人事管理系系统来说,不不需要大型型的数据库库系统。只只需要一个个操作方便便,功能实实用,能满满足本中心心对数据的的管理及需需求的系统统。我的目目标就是在在于开发一一个功能实实用、操作作方便,简简单明了的的人事管理理系统。能能够录入人人事的基本本资料,在在操作上能能够完成诸诸如添加、修修改、删除除、按各种种条件进行行查询、能能维护管理理公司员工工每个月的的工资信息息,在操作作上能完成成诸如添加加,修改删删除及按各各种条件进进行查询,还还能管理员员工的请假假信息等其其它的重要要信息。主要目标如如下:
6、a、对员工工信息的管管理(包括括查询、添添加、删除除和修改);b、对考勤勤信息的管管理(包括括查询、添添加、删除除和修改);c、对培训训信息的管管理(包括括查询、添添加和修改改);d、对用户户登录密码码的管理(修修改)。JSP的优优点:1.对于用用户界面的的更新,其其实就是由由 Webb Serrver进进行的,所所以给人的的感觉更新新很快。 2.所有的的应用都是是基于服务务器的,所所以它们可可以时刻保保持最新版版本。 3.客户端端的接口不不是很繁琐琐,对于各各种应用易易于部署、维维护和修改改。 MySQLL数据库具具有以下主主要特点: 1. 同时访问问数据库的的用户数量量不受限制制; 2.
7、可以保保存超过550,0000,0000条记录录; 3. 是目前前市场上现现有产品中中运行速度度最快的数数据库系统统; 4. 用户权权限设置简简单、有效效。用例图如下下: 图2.1系系统用例图图数据库设计计(Dattabasse Deesignn)是指对对于一个给给定的应用用环境,构构造最优的的数据库模模式,建立立数据库及及其应用系系统,使之之能够有效效地存储数数据,满足足各种用户户的应用需需求(信息息要求和处处理要求)。数数据库的设设计通常是是以一个已已经存在的的数据库管管理系统为为基础的。根根据用户需需求和业务务流程,本本系统MYYSQL数数据库管理理系统。通通过对当前前的开发语语言的分析
8、析,JSPP(Javva Seerverr Pagges)是是由Sunn Miccrosyystemms公司倡倡导、许多多公司参与与一起建立立的一种动动态网页技技术标准。 JSP技技术是用JJAVA语语言作为脚脚本语言的的,JSPP网页为整整个服务器器端的JAAVA库单单元提供了了一个接口口来服务于于HTTPP的应用程程序。 在在传统的网网页HTMML文件(*.httm,*.htmll)中加入入Javaa程序片段段(Scrriptllet)和和JSP标标记(taag),就就构成了JJSP网页页(*.jjsp)。WWeb服务务器在遇到到访问JSSP网页的的请求时,首首先执行其其中的程序序片段,然
9、然后将执行行结果以HHTML格格式返回给给客户。程程序片段可可以操作数数据库、重重新定向网网页以及发发送 emmail 等等,这这就是建立立动态网站站所需要的的功能。所所有程序操操作都在服服务器端执执行,网络络上传送给给客户端的的仅是得到到的结果,对对客户浏览览器的要求求最低,可可以实现无无Pluggin,无无ActiiveX,无无Javaa Appplet,甚甚至无Frrame。开发平台使用的是NETBEAN。第三章 总体设计3.1 系系统框架本系统共分分4大部分,44个功能模模块。分别别是:员工工信息管理理模块,合同信息管理模块,培训训信息管理模块和系统管理模块。系统结构构如图3.1所示。
10、图3.1 系统结结构图描述管理业业务流程的的图表由管管理业务流流程图和表表格分配图图,管理业业务流程图图是一种表表明系统内内部各部门门、人员之之间的业务务关系、作作业顺序和和管理信息息流动的流流程图,它它可以帮助助分析人员员找出流程程中的不合合理回路。下下面图3.2就是人事管理流程图图。3.2数据据库设计数据库设计计(Dattabasse Deesignn)是指对对于一个给给定的应用用环境,构构造最优的的数据库模模式,建立立数据库及及其应用系系统,使之之能够有效效地存储数数据,满足足各种用户户的应用需需求(信息息要求和处处理要求)。数数据库的设设计通常是是以一个已已经存在的的数据库管管理系统为
11、为基础的。通过对业务流程的分析,得到了系统的实体,以及实体之间关系,根据这些实体与关系之间的联系,得到了系统的E-R图,如图3.3所示。 图3.3 人事管理系统ER图E-R模型型用实体间间联系反映映现实世界界事物间的的内在联系系,而数据据表的建立立是应用程程序开发过过程中的非非常重要的的一个环节节,必须清清楚每一模模块要操纵纵的数据是是那些,以以及数据间间的相互关关系,然后后建立数据据表。本系系统数据库库使用MYYSQL ,数据库库名为frriendd,包含以下下3个表:成员员表,收支项目目表,账簿表。下下面分别详详细介绍以以上各表:表3.1 成员表表字段名称数据类型长度是否为空主外键说明真实
12、姓名varchhar255否主键真实姓名用户名varchhar255是否用户名密码varchhar255是否密码表3.2收收支项目表表字段名称数据类型长度是否为空主外键说明项目IDvarchhar255否主键项目编号名称varchhar255是否名称类型varchhar255是否类型表3.3账账簿表字段名称数据类型长度是否为空主外键说明账目IDInt20否主键账目编号收支项目varchhar255是否收支项目收支日期varchhar255是否收支日期收支成员varchhar255是否收支成员收支金额Floatt20是否收支金额备注varchhar255是否备注第四章 详细设计与与实现详细设计阶
13、阶段就是把把解决方法法具体化,设设计出详细细规格说明明,包含必必要的细节节,程序员员可以根据据它们写出出实际的程程序代码,详详细设计也也称模块设设计,在这这个阶段将将详细地设设计每个模模块,具体体的实现功功能。在详详细设计过过程中,具具体的功能能实现过程程可以按照照软件工程程中的方法法描述中的的交互模型型具体描述述,力求完完全符合客客户的真实实需求。该系统的设设计基于以以下几个原原则:1.标准化;2.模块化化;3.先进性性;4.安安全性;55.交互性性。4.1 登登陆系统1.实现目目标:管理员(或或者普通用用户)进入入系统前,必必须通过系系统登录进进入主程序序界面,系系统登录界界面(如图图4.
14、1所示示)主要实实现以下功功能:确认认用户的身身份和对系系统信息起起到保密作作用。图4.1 系统登登录界面2.实现方方法在该登录界界面中,不不需要选择择操作员的的权限,系系统可根据据数据库中中存放的管管理员信息息判断该用用户是管理理员还是普普通用户。界界面是由JJSP语言言来进行编编辑的,在在该子系统统中进行界界面设计时时要充分考考虑用户的的操作习惯惯,减少用用户大量的的输入操作作以减轻用用户的工作作量。部分代码如如下Strring sql = sselecct * fromm admmin wwheree Namme= + nname+ aand ppasswword= + psww + ;
15、trry RResulltSett ressult = Dbbcon.execcuteQQueryy(sqll);iif (rresullt.neext() Striing iisadmmin=rresullt.geetStrring(isaadminn),eemplooyeeIId=reesultt.gettStriing(emplloyeeeId); sesssionn.settAttrributte(eemplooyeeIId,eemplooyeeIId); sesssionn.settAttrributte(iisadmmin,isaddmin); if(isaddmin.equaal
16、s(是)respponsee.senndReddirecct(lloginnsucccess.jsp); elsse reesponnse.ssendRRedirrect(logginsuuccesss_usser.jjsp); eelserespponsee.senndReddirecct(lloginnfaill.jspp); catcch (SSQLExxcepttion e) ee.priintSttackTTracee();4.2管理理员主界面模模块设计1.实现目目标:程序启动后后,在系统统登录界面面若被判断是是管理员权权限并验证证操作员密密码后,将将进入主界界面。主程程序界面(如如
17、图4.22所示)主主要实现如如下功能:执行相应应的权限操操作;选择择主界面的的菜单,调调用相应程程序,进行行相应操作作;显示操操作权限。 图4.3 管理理员主界面2.实现方方法主程序界面面里有5个子菜单单:(1)员工工信息(2)工资资信息(3)合同同信息(4)培训训信息(5)系统统管理管理员主页页面展开如如图4.33 图44.3 主主菜单展开开图4.3员工工信息管理理模块1.实现目目标:管理员单击击主菜单下下的员工信息管管理菜单下下的基本信息息,进入当前前员工信息息页面。(如如图4.44所示)。图4.4 当前员员工信息2.实现方方法管理员可以以进行员工工信息查看看并可对其其进行修改改和删除。界
18、界面是由JJSP语言言来进行编编辑的,在在该进行界界面设计时时要充分考考虑用户的的操作习惯惯,减少用用户大量的的输入操作作以减轻用用户的工作作量。部分代码:publlic VVectoor geetalllEmplloyeee() SStrinng sqql = sellect * frrom eemplooyee; ttry RResulltSett rs = Dbbcon.execcuteQQueryy(sqll); wwhilee (rss.nexxt() eemplooyee oneEEmplooyee = neew emmployyee(); ooneEmmployyee.ssetE
19、mmployyeeIdd(rs.getSStrinng(eemplooyeeIId); ooneEmmployyee.ssetNaame(rrs.geetStrring(namme); ooneEmmployyee.ssetCaardNuumberr(rs.getSStrinng(ccardNNumbeer); ooneEmmployyee.ssetNaationn(rs.getSStrinng(nnatioon); ooneEmmployyee.ssetSeex(rss.gettStriing(sex); ooneEmmployyee.ssetBiirthdday(rrs.geetStrri
20、ng(birrthdaay); ooneEmmployyee.ssetGrraduaateScchooll(rs.getSStrinng(ggraduuateSSchoool); ooneEmmployyee.ssetScchoollRecoord(rrs.geetStrring(schhoolRRecorrd); ooneEmmployyee.ssetDeeparttmentt(rs.getSStrinng(ddeparrtmennt); ooneEmmployyee.ssetPoositiionNaame(rrs.geetStrring(possitioonNamme); ooneEmmp
21、loyyee.ssetTeelephhone(rs.ggetSttringg(teelephhone); ooneEmmployyee.ssetEmmail(rs.ggetSttringg(emmail); ooneEmmployyee.ssetEdditTiime(rrs.geetStrring(ediitTimme); ooneEmmployyee.ssetMeemo(rrs.geetStrring(memmo); llist.add(oneEEmplooyee); cattch (SQLEExcepptionn e) ee.priintSttackTTracee(); rreturrn
22、liist;publiic boooleaan uppdateeEmplloyeee(Strring emplloyeeeId, Striing nname, Strring carddNumbber, Striing nnatioon, SStrinng seex, SStrinng biirthdday, Striing ggraduuateSSchoool, SStrinng scchoollRecoord, Striing ddeparrtmennt, SStrinng poositiionNaame, SStrinng teelephhone, Strring emaiil, SSt
23、rinng meemo) SStrinng sqqlStrr = updaate eemplooyee set ; ssqlSttr = sqlSStr + naame = + sttrForrmat.toSqql(naame) + ,; ssqlSttr = sqlSStr + caardNuumberr = + strFFormaat.tooSql(carddNumbber) + ,; ssqlSttr = sqlSStr + naationn = + strFFormaat.tooSql(natiion) + ,; ssqlSttr = sqlSStr + seex = + strrFo
24、rmmat.ttoSqll(sexx) + ,; ssqlSttr = sqlSStr + biirthdday = + sttrForrmat.toSqql(biirthdday) + ,; ssqlSttr = sqlSStr + grraduaateScchooll = + strFFormaat.tooSql(gradduateeSchoool) + ,; ssqlSttr = sqlSStr + scchoollRecoord = + sttrForrmat.toSqql(scchoollRecoord) + ,; ssqlSttr = sqlSStr + deeparttmentt
25、 = + strFFormaat.tooSql(depaartmeent) + ,; ssqlSttr = sqlSStr + poositiionNaame = + sttrForrmat.toSqql(poositiionNaame) + ,; ssqlSttr = sqlSStr + teelephhone = + sstrFoormatt.toSSql(ttelepphonee) + ,; ssqlSttr = sqlSStr + emmail = + sstrFoormatt.toSSql(eemaill) + ,; ssqlSttr = sqlSStr + meemo = + st
26、trForrmat.toSqql(meemo) + ; ssqlSttr = sqlSStr + whhere emplloyeeeId = + emmployyeeIdd + ; bbooleean ssert = Dbbcon.execcuteIInserrt(sqqlStrr); rreturrn seert; 3.点击图图4.4左左上角的“点击员工工姓名查看看详细信息息”可显示更更多员工信信息如图44.5 图4.5 查看看详细的员员工信息部分代码:publlic eemplooyee getEEmplooyee(Striing eemplooyeeIId) eemplooyee one
27、EEmplooyee = nuull; ttry SStrinng sqql = sellect * frrom eemplooyee wherre emmployyeeIdd= + emmployyeeIdd + ; RResulltSett rs = Dbbcon.execcuteQQueryy(sqll); wwhilee (rss.nexxt() ooneEmmployyee = neww empployeee(); ooneEmmployyee.ssetEmmployyeeIdd(rs.getSStrinng(eemplooyeeIId); ooneEmmployyee.ssetNa
28、ame(rrs.geetStrring(namme); ooneEmmployyee.ssetCaardNuumberr(rs.getSStrinng(ccardNNumbeer); ooneEmmployyee.ssetNaationn(rs.getSStrinng(nnatioon); ooneEmmployyee.ssetSeex(rss.gettStriing(sex); ooneEmmployyee.ssetBiirthdday(rrs.geetStrring(birrthdaay); ooneEmmployyee.ssetGrraduaateScchooll(rs.getSStri
29、nng(ggraduuateSSchoool); ooneEmmployyee.ssetScchoollRecoord(rrs.geetStrring(schhoolRRecorrd); ooneEmmployyee.ssetDeeparttmentt(rs.getSStrinng(ddeparrtmennt); ooneEmmployyee.ssetPoositiionNaame(rrs.geetStrring(possitioonNamme); ooneEmmployyee.ssetTeelephhone(rs.ggetSttringg(teelephhone); ooneEmmployy
30、ee.ssetEmmail(rs.ggetSttringg(emmail); ooneEmmployyee.ssetEdditTiime(rrs.geetStrring(ediitTimme); ooneEmmployyee.ssetMeemo(rrs.geetStrring(memmo); cattch (SQLEExcepptionn e) ee.priintSttackTTracee(); rreturrn onneEmpployeee; 4. 点击击图4.55下方的“打印预览览”可显示打打印的信息息如图4.6 图 4.6 打印印预览4.4 员员工信息添添加功能1.实现目目标:管理员单击
31、击员工信息息管理菜单单下的添加加员工信息息,进入添添加员工信信息页面对对员工信息息进行添加加。(如图图4.7)图4.7 添加新的的员工信息息2.实现方方法管理员根据据员工信息,将资资料填入数数据库,减减少用户大大量的输入入操作以减减轻用户的的工作量。代码如下: sql = iinserrt innto eemplooyee valuues( + emplloyeeeId + , + namme + , + carddNumbber + , + nattion + , + seex + , + birtthdayy + ,+ grraduaateScchooll + , + sschooolRe
32、ccord + , + deeparttmentt + , + pposittionNName + , + teelephhone + , + emmail + , + meemo + , + ediitTimme + ); bbooleean ssert = Dbbcon.execcuteIInserrt(sqql); rrespoonse.senddRediirectt(shhowMaanageeServvlet?operr=empployeee); 4.5合同同信息管理理功能1.实现目目标:管理员单击击主菜单下下的合同信信息菜单下下的查看合同同,进入当前前合同信息页页面。(如如图4.88
33、所示)。图4.8 当前的合同同信息2.实现方方法管理员可以以进行合同同信息查看看并可对其其进行修改改和删除。界界面是由JJSP语言言来进行编编辑的,在在该进行界界面设计时时要充分考考虑用户的的操作习惯惯,减少用用户大量的的输入操作作以减轻用用户的工作作量。publiic Veectorr gettallCContaact() SStrinng sqql = sellect * frrom ccontaact; ttry RResulltSett rs = Dbbcon.execcuteQQueryy(sqll); wwhilee (rss.nexxt() ccontaact ooneCoont
34、acct = new conttact(); ooneCoontacct.seetConntacttId(rrs.geetStrring(conntacttId); ooneCoontacct.seetEmpployeeeId(rs.ggetSttringg(emmployyeeIdd); ooneCoontacct.seetNamme(rss.gettStriing(namee); ooneCoontacct.seetDeppartmment(rs.ggetSttringg(deeparttmentt); ooneCoontacct.seetConntacttTypee(rs.getSStr
35、inng(ccontaactTyype); ooneCoontacct.seetBeggainTTime(rs.ggetSttringg(beegainnTimee); ooneCoontacct.seetEdiitTimme(rss.gettStriing(edittTimee); ooneCoontacct.seetEnddTimee(rs.getSStrinng(eendTiime); llist.addEElemeent(ooneCoontacct); cattch (SQLEExcepptionn e) ee.priintSttackTTracee(); rreturrn liist
36、; 4.6 添添加合同信信息1、实现目目标:管理员单击击合同信息息菜单下的的添加合同同,进入添添加合同信信息页面对对合同信息息进行添加加。(如图图4.9)图 4.99 添加新的的合同信息息2、实现方方法:管理员根据据合同信息,将资资料填入数数据库,减减少用户大大量的输入入操作以减减轻用户的的工作量sql = innsertt intto coontacct vaaluess( + emmployyeeIdd + , + nname + , + coontacctId + , + deeparttmentt + , + ccontaactTyype + , + beggainTTime + ,
37、+ enndTimme + , + edittTimee + ); bbooleean ssert = Dbbcon.execcuteIInserrt(sqql);47 培培训信息管管理1.实现目目标:管理员单击击主菜单下下的培训信信息菜单下下的查看合同同,进入当前前培训信息息页面。(如如图4.110所示)。图4.100 当前的培培训信息2.实现方方法管理员可以以进行培训训信息查看看并可对其其进行修改改和删除。界界面是由JJSP语言言来进行编编辑的,在在该进行界界面设计时时要充分考考虑用户的的操作习惯惯,减少用用户大量的的输入操作作以减轻用用户的工作作量。publiic Veectorr ge
38、ttallTTrainn() SStrinng sqql = sellect * frrom ttrainn; ttry RResulltSett rs = Dbbcon.execcuteQQueryy(sqll); wwhilee (rss.nexxt() ttrainn oneeTraiin = new traiin(); ooneTrrain.setPProIdd(rs.getSStrinng(pproIdd); ooneTrrain.setPProNaame(rrs.geetStrring(prooNamee); ooneTrrain.setBBeginnTimee(rs.getSStrinng(bbeginnTimee); ooneTrrain.setEEndTiime(rrs.geetStrring(enddTimee); ooneTrrain.setTTeachher(rrs.geetStrring(teaache