人力资源管理系统的设计与实现_第1页
人力资源管理系统的设计与实现_第2页
人力资源管理系统的设计与实现_第3页
人力资源管理系统的设计与实现_第4页
人力资源管理系统的设计与实现_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计论文题目人力资源管理系统的设计与实现学生姓名李阳专业班级交通软件061所在院系软件学院指导教师王姣职称副教授所在单位大连交通大学软件学院教研室主任郑广海完成日期年月日摘要人力资源管理系统是现代企业管理的核心内容。随着计算机信息技术的高速发展,电子商务模式的空前盛行,企业之间的竞争也从有形的经济市场转向了网络。开发以计算机技术、网络技术、信息技术支持的现代人力资源管理系统,既能提高企业人力资源管理的技术含量和企业的办事效率,也能使人力资源管理能够进入现代化、决策科学化的进程。本系统运用了现代人力资源管理理论,结合企业的实际情况,比较国内外人力资源管理系统的现状,设计了一个基于INTERNET/INTRANET的人力资源管理系统。研究人力资源管理系统的主要内容有招聘信息管理、员工管理、培训管理、薪资管理、奖惩管理、应聘人员管理。系统开发主要是MVC设计思想的应用,主要采用JSPSTRUTS1HIBERNATE的开发方式。JSP对应MVC设计思想的视图(VIEW),STRUTS是对应MVC设计思想的控制(CONTROLLER),主要负责整个系统的核心业务控制主要是负责接收/响应客服端请求,以及动态生成WEB现实页面。HIBERNATE对应的是MVC设计思想的模型(MODEL),主要负责整个系统的数据。关键词STRUTSHIBERNATEMVC人力资源管理ABSTRACTHUMANRESOURCESMANAGEMENTSYSTEMISTHECOREOFMODERNENTERPRISEMANAGEMENTWITHTHERAPIDDEVELOPMENTOFCOMPUTERINFORMATIONTECHNOLOGYANDUNPRECEDENTEDPOPULARITYOFECOMMERCEMODEL,COMPETITIONBETWEENENTERPRISESINTHEECONOMICMARKETSHIFTFROMVIRTUALECONOMICMARKETTOPHYSICALNETWORKTHEMODERNHUMANRESOURCEMANAGEMENTSYSTEMSUPPORTEDBYCOMPUTERTECHNOLOGY,NETWORKTECHNOLOGY,INFORMATIONTECHNOLOGYCANENHANCETHEIRTECHNICALCONTENTOFHUMANRESOURCEMANAGEMENTANDBUSINESSEFFICIENCY,ASWELLASENABLEACCESSTOPROCESSOFMODERNHUMANRESOURCEMANAGEMENTANDSCIENTIFICDECISIONMAKINGTHESYSTEMDESIGNAHUMANRESOURCESMANAGEMENTSYSTEMBASEDONINTERNET/INTRANETUSINGTHETHEORYOFMODERNHUMANRESOURCEMANAGEMENTCOMBINEDWITHTHEACTUALSITUATIONANDCONTRASTBETWEENTHEACTUCLSITUATIONOFHUMANRESOURCESMANAGEMENTSYSTEMINOURCOUNTRYANDABROAD,THESTUDYOFHUMANRESOURCEMANAGEMENTSYSTEMSMAINCONTENTSARERECRUITMENTINFORMATIONMANAGEMENT,STAFFMANAGEMENT,TRAININGMANAGEMENT,PAYROLLMANAGEMENT,INCENTIVEMANAGEMENT,PERSONNELMANAGEMENTCANDIDATESTHEDEVELOPMENTOFTHESYSTEMISMAINLYTHEAPPLICATIONOFMVCDESIGNANDMOSTLYUSINGTHEDEVELOPMENTSTYLEOFJSPSTRUTS1HIBERNATEINWHICHJSPISCORRESPONDINGTOTHEVIEWOFMVCDESIGNVIEWSTRUTSISCORRESPONDINGTOTHECONTROLLEROFMVCDESIGNCONTROLLERWHICHISRESPONSIBLEFORTHECONTROLOFTHESYSTEMSCOREBUSINESS,ANDISMAINLYRESPONSIBLEFORRECEIVINGANDGIVINGRESPONSETOSERVICEREQUESTSOFTHECLIENTS,ANDTHEREALITYOFDYNAMICALLYGENERATEDWEBPAGESHIBERNATEISCORRESPONDINGTOTHEMODELOFTHEMVCDESIGNMODEL,ANDISMAINLYRESPONSIBEFORTHESYSTEMDATAKEYWORDSSTRUTSHIBERNATEMVCHUMANRESOURCEMANAGEMENT目录第一章系统概述211课题来源及意义212国内外发展状况3121人力资源管理系统的发展情况3122美国人力资源管理系统十大发展趋势413系统开发环境及技术介绍4131STRUTS简介5132HIBERNATE简介5133TOMCAT简介6第二章系统需求分析821功能需求822性能需求分析823可行性分析924输入输出需求925数据管理需求926故障处理需求927运行环境需求10第三章系统总体设计1131系统功能版块划分1132系统流程分析1133系统功能模块图12第四章数据库设计1341MYSQL数据库管理系统1342数据库的需求分析1343外部设计1344实体关系ER图设计1345创建数据库1546数据库设计1647数据库保密设计2048数据库的连接20481HIBERNATE简介20482配置数据库中的表与实体BEANS之间的联系。21483配置HIBERNATECFGXML文件24第五章系统详细设计与实现2551STRUTS1框架工作原理25511STRUTS1工作原理25512STRUTS1的工作流程图25513STRUTS1的开发流程2752人力资源管理系统的简历发送页面设计与实现2753人力资源管理系统的登录页的设计与实现2854人员信息录入功能的设计与实现2955人员信息管理功能的设计与实现3056招聘信息管理功能模块的设计与实现3257培训管理模块的设计与实现3458奖惩管理模块的设计与实现3659薪金管理模块的设计与实现38第六章系统测试与性能分析4261测试方法4262测试与调试4263功能模块的测试42631系统登录验证42632添加培训信息的测试43633人员信息录入的测试4564性能分析4565测试结论47结论48谢辞49参考文献50引言现在网络的发展已呈现商业化、全民化、全球化的趋势。目前,几乎世界上所有的公司都在利用网络传递商业信息,进行商业活动,从宣传企业、发布广告、招聘雇员、传递商业文件乃至拓展市场、网上销售等,无所不能。如今网络已成为企业进行竞争的战略手段。企业经营的多元化拓展,企业规模的进一步扩大,对于企业的管理、业务扩展、企业品牌形象等提供了更高的要求。在以信息技术为支撑的新经济条件下,越来越多的企业利用起网络这个有效的工具。全球范围内的企业内部组织正在发生巨变,未来企业成功的关键的依靠企业人力资源,人才之争已经成为市场竞争中的核心内容之一,以人为本成为企业立足和发展的根本。有效的管理企业的人力资源,为企业提供强有力的储备力量,使之成为企业发展的主动力。通过人力资源的有效管理,掌握最新的、准确的企业人力资源信息,并对其进行复杂的统计与分析,从而充分发挥每个员工的潜能,为企业创造更大的价值。项目目标与期望树立全新企业形象许多人知道,一个公司的所有和员工有关的运作,包括加薪、出差、请假,人员的调动、离任等等都由人力资源部门来完成,如果是一家拥有上千人的大型企业,这个工作量是相当惊人的。因此本系统的开发,大大缓解了该部门的工作压力,也避免了以前人工作业的错误几率。总结上述几点,该人力资源管理系统建设目标可总结如下建立企业人事管理办公自动化。采取电脑管理人的方法,为企业节省人力、物力。项目设计原则1实用性原则充分考虑到在人力资源管理中可能遇到的种种问题,尽量全面的做好需求分析,以减少日后更新软件的次数。2经济性原则建立适合企业自身需求的网络平台,提供广泛的涵盖用户多种需求的功能,数据处理方式灵活以满足需求,节省系统开发成本,并确保其较好的拓展性和开放性;同时系统具有基于WEB界面的管理后台,能够自主的对网站中大部分内容作更新、修改操作,节省了企业网站的运营成本,提高了信息更新、传播效率。3扩充性原则系统的整体规划及框架设计是具可扩充性的,前台页面的设计能保证系统在增加栏目后不会破坏系统的整体结构。后台数据库的设计具有高度的扩充性,能够根据需要对栏目、类别进行增、删、修改。第一章系统概述11课题来源及意义国家的竞争是综合实力的竞争,企业之间的竞争,是经济实力的竞争经济实力的竞争,是科学技术的竞争科学技术的竞争,是人才的竞争人才的竞争,是人力资源的竞争,这是大家的共识。教育是基础的人才的培养,是文化知识的传播,包括品德的修养。从现代竞争意义上讲,教育主要体现为人力资源的开发投资、人力资源管理思路与方法的建立和灌输。就此而言,一个企业的关键竞争力是人力资源的竞争,具体表现为人力资源的开发投资和其管理水平的提高。对于企业发展来说,关键的核心工作是做好人力资源的开发投资和管理工作,这是一个基础和必备条件。由此,我们能认识到一个企业的强盛,可以在多个方面体现,也可以在某一方面突出体现,但都离不开教育这个基础,离不开人力资源开发与管理那就是人力资本的提升。现代人力资源管理对企业的意义,主要有以下几方面有利于促进生产经营的顺利进行。企业拥有三大资源,即人力资源、物质资源和财力资源,而物质资源和财力资源的利用是通过和人力资源的结合实现的,只有通过合理组织劳动力,不断协调劳动力之间、劳动力和劳动资料和劳动对象之间的关系,才能充分利用现有的生产资料和劳动力资源,使它们在生产经营过程中最大限度地发挥其功能,形成最优的配置,从而保证生产经营活动有条不紊地进行。有利于调动企业员工的积极性,提高劳动生产率。企业中的员工,他们有思想、有感情、有尊严,这就决定了企业人力资源管理必须设法为劳动者创造一个适合他们所需要的劳动环境,使他们乐于工作,并能积极主动地把个人劳动潜力和聪明发挥出来,为企业创造出更有效的生产经营成果。因此,企业必须善于处理好物质奖励、行为激励以及思想教育工作三方面的关系,使企业员工始终保持旺盛的工作热情,充分发挥自己的专长,努力学习技术和钻研业务,不断改进工作,从而达到提高劳动生产率的目的。有利于减少劳动耗费,提高经济效益并使企业的资产保值。经济效益是指进行经济活动中所获得的和所耗费的差额。减少劳动耗费的过程,就是提高经济效益的过程。所以,合理组织劳动力,科学配置人力资源,可以促使企业以最小的劳动消耗取得最大的经济成果。在市场经济条件下,企业的资产要保值增值,争取企业利润最大化,价值最大化,就需要加强人力资源管理。有利于现代企业制度的建立。科学的企业管理制度是现代企业制度的重要内容,而人力资源的管理又是企业管理中最为重要的组成部分。一个企业只有拥有第一流的人才,才能充分而有效地把握和应用第一流现代化技术,创造出第一流的产品。不具备优秀的管理者和劳动者,企业的先进设备和技术只会付诸东流。提高企业现代化管理水平,最重要的是提高企业员工的素质。可见,注重和加强对企业人力资源的开发和利用,搞好员工培训教育工作,是实现企业管理由传统管理向科学管理和现代管理转变不可缺少的一个环节。有利于建立和加强企业文化建设。企业文化是企业发展的凝聚剂和催化剂,对员工具有导向、凝聚和激励功能。优秀的企业文化可以增进企业员工的团结和友爱;减少教育和培训经费;降低管理成本和运营风险;并最终使企业获取巨额利润。12国内外发展状况121人力资源管理系统的发展情况一个企业在市场中的竞争优势集中表现为以下两点一、企业是否具有在人才市场中具有能优势的人才;二、企业所具有的人才是否具有合适的环境。所以现在的成功企业一般关注以下两个方面,一是积极寻找合适的人才,并向办法留住人才,还有一个就是营造企业的内部环境,一面促进人才的成长,一面又有利于人才脱颖而出。人力资源管理系统有其自身的发展历程,而现在国内大量涌现的人力资源管理系统,有国外的,也有国产的,总的说来是良莠不齐。为了让企业在选择人力资源系统时自己先有个了解,人力资源管理系统发展的四个阶段介绍如下1)薪资计算系统时代人力资源管理系统的发展历史可以追溯到20世纪60年代末期。由于当时计算机技术已经进入实用阶段,同时企业的规模也越来越大,用手工来计算和发放薪资既费时费力又非常容易出差错,为了解决这个问题,第一代的人力资源管理系统,其实就是薪资管理系统应运而生。当时由于技术条件和需求的限制,用户非常少,而且那种系统充其量也只不过是一种自动计算薪资的工具。2)薪资/人事管理系统时代第二代的人力资源管理系统出现于20世纪70年代末。随着计算机技术的飞速发展,无论是计算机的普及性,还是计算机系统工具和数据库技术的发展,第二代薪资管理系统基本上解决了第一代系统的主要问题,开始纪录员工的其他基本信息包括薪资的历史数据,此外,它的报表生成和薪资数据分析功能也都有了较大的改善。这个时代的的管理系统以薪资处理为主,并兼具了一部分人事信息管理的功能。3)人力资源管理系统时代人力资源管理系统的第一次革命性变革出现在20世纪90年代初。由于企业管理理论,特别是人力资源理论的发展,使人们认识到人力资源在企业发展和企业竞争优势中的关键性作用,另外随着IT技术的发展,把一些人力资源管理理念和理论应用到企业管理中也变为可能。这一阶段企业最关注的是员工的绩效考评和管理系统,以及培训管理系统。第三代人力资源管理系统的特点是从人力资源管理的角度出发,用集中的数据库将几乎所有与人力资源相关的数据(如薪资福利、招聘、个人职业生涯的设计、培训、职位管理、绩效管理、岗位描述、个人信息和历史资料)统一管理起来,形成了集成的信息源。友好的用户界面,强有力的报表生成工具、分析工具和信息的共享使得人力资源管理人员得以摆脱繁重的日常工作,集中精力从战略的角度来考虑企业人力资源规划和政策。4)E人力资源管理系统或EHRMS时代人力资源管理信息系统的第二次革命性变革出现在20世纪90年代末和21世纪初。由于INTERNET和INTRANET技术的普及,以及人力资源管理理论的进一步发展,学习与发展成为企业与员工个人的永远的主题,而IT技术为这一主题给出的答案就是ELEARNING。为了快速响应企业内部和外部的各种要求与变化,WEB使人力资源部门与企业的内部员工和外部世界之间的距离成为0,这就是人力资源管理系统的E话。E化HRMS除了具有人力资源管理系统的所有特征外,还可以实现员工或潜在员工和企业人力资源管理者互动和零距离。122美国人力资源管理系统十大发展趋势1)与门户网站集成。随着企业门户网站逐渐转化为劳动生产工具,电子医疗保障、薪酬系统和绩效考评工具等在线方案的加入会大大有益于人力资源管理。2)在各个工作领域增加技术支持。企业将不遗余力地让员工更多地接触网络、公司各个系统和国内外的人力资源信息。3)更大限度地依赖投资回报工具。高层领导将要求人力资源部通过投资回报分析来证明人力资源技术投资的可行性。4)侧重于完善现有的人力资源系统。企业越来越理智地寻求完善、整合方案,主要是改善原有的系统和连接其他系统。5)工作场所的有效利用。为提高生产率,在线会议、网上研讨会、可视会议将继续盛行,这些都将有利于控制成本、保证员工安全和节省时间。6)决策支持工具。财务部门和人力资源部将使用分析工具来衡量人力资源措施的成败,并预测效果。7)持续经营计划。人力资源部为企业招聘员工,并且为员工提供空间、系统和支持,使其工作更有成效。8)越来越多的企业增加了XML数据计划和结构的标准化。9)关注小的降低成本的措施。人力资源部将关注流程改进和降低成本措施的累积效果。10)要求各供应商整合和协作。人力资源部为企业整体经营谨慎选择各项技术,并且考虑各供应商的服务能力,对供应商的评估和其技术与其他方案的兼容性是关键因素。13系统开发环境及技术介绍本系统采用BROWER/SEVER架构,以WINDOWS作为系统平台,采用JAVA作为主要的程序设计语言,MYSQL作为后台数据库的管理信息系统。TOMCAT作为WEB服务器承载。131STRUTS简介STRUTS对MODEL,VIEW和CONTROLLER都提供了对应的组件。ACTIONSERVLET,这个类是STRUTS的核心控制器,负责拦截来自用户的请求。ACTION,这个类通常由用户提供,该控制器负责接收来自ACTIONSERVLET的请求,并根据该请求调用模型的业务逻辑方法处理请求,并将处理结果返回给JSP页面显示。MODEL部分由ACTIONFORM和JAVABEAN组成,其中ACTIONFORM用于封装用户的请求参数,封装成ACTIONFORM对象,该对象被ACTIONSERVLET转发给ACTION,ACTION根据ACTIONFORM里面的请求参数处理用户的请求。JAVABEAN则封装了底层的业务逻辑,包括数据库访问等。VIEW部分。该部分采用JSP实现。STRUTS提供了丰富的标签库,通过标签库可以减少脚本的使用,自定义的标签库可以实现与MODEL的有效交互,并增加了现实功能。CONTROLLER组件有两个部分组成系统核心控制器,业务逻辑控制器。系统核心控制器,对应上图的ACTIONSERVLET。该控制器由STRUTS框架提供,继承HTTPSERVLET类,因此可以配置成标注的SERVLET。该控制器负责拦截所有的HTTP请求,然后根据用户请求决定是否要转给业务逻辑控制器。业务逻辑控制器,负责处理用户请求,本身不具备处理能力,而是调用MODEL来完成处理。对应ACTION部分。132HIBERNATE简介HIBERNATE,冬眠的意思,就是让对象持久化、保持到物理介质上(序列化后,就可以写到磁盘上)。HIBERNATE主要作用是映射,就是把对象存到数据库里,也就是说把对象存到数据库里的这个过程我们已经不用做了(以前都是自己写的)O,对象模型。R,关系模型,HIBERNATE要做的就是把对象模型的东西,存放到关系模型里。实体中的类会对应关系数据型数据库中的一个表,实体中的属性会对应关系型数据库中的列,而且实体中的一个实例会对应关系型数据库中的一条记录。阻抗不匹配JAVA是面向对象的,关系型数据库是面向关系的,它俩存在不一致性的概念。在面向对象里有继承的概念,而在关系型数据库里没有,假如我想把几个具有继承关系的对象存到数据库里,就找不到与之对象的概念了。HIBERNATE就可以解决阻抗不匹配问题,以后操作对象就相当于操作数据库了。HIBERNATE属于OR映射框架,其中有两个过程存储和加载。将对象映射到数据库里就是一个存储过程;查询数据库里的一条数据的时候,数据要能够加上来,放到我的数据的对象里,这就是加载。当然HIBERNATE还完成了其它很多事情。类似HIBERNATE这样OR映射框架的模型还有APACHEOJB、SUN公司的JDO、ORACLE的TOPLINK以及EJB。使用HIBERNATE的标准API,数据的移植非常容易(只需要修改配置就可以了)透明持久性,也就是说当你保存USER对象时,它不需要没有继承HIBERNATE中的任何类以及实现他的任何接口。通常这个对象,我们叫做POJO。POJO最纯粹的对象,这个对象没有继承第三方框架的任何类,没有实现它的任何接口,STRUTS中的ACTIONFORM就不是POJO,因为ACTIONFORM继承了STRUTS,不能离开STRUTS。HIBERNATE适合什么样的情况针对某个对象,简单的把它查询上来,然后在对它进行编辑,再对它进行修改。而且编辑、修改只是对单个对象进行的、不是对很多对象批量的进行。还有就是多个对象之间有清晰的关系。轻量级框架的好处,就是没有侵入性。HIBERNATE就是一个轻量级框架,测试起来非常简单。持久化对象的三种状态瞬时对象(TRANSIENTOBJECTS)使用NEW操作符初始化的对象不是立刻就持久的。它们的状态是瞬时的,也就是说它们没有任何跟数据库表相关联的行为,只要应用不再引用这些对象,它们的状态就会丢失,并由垃圾回收机制回收。持久化对象(PERSISTOBJECTS)持久实例是任何具有数据库标识的实例。它由持久化管理器SESSION统一管理,持久实例是在事务中经行操作的它们的状态在事务结束时同数据库进行同步。当事务提交时,通过执行SQL的INSERT、UPDATE和DELETE语句把内存中的状态同步到数据库中。离线对象(DETACHEDOBJECTS)SESSION关闭之后,持久化对象就变为离线对象。离线表示这个对象不能再与数据库保持同步,它们不再受HIBERNATE管理。133TOMCAT简介TOMCAT是APACHE软件基金会(APACHESOFTWAREFOUNDATION)的JAKARTA项目中的一个核心项目,由APACHE、SUN和其他一些公司及个人共同开发而成。由于有了SUN的参与和支持,最新的SERVLET和JSP规范总是能在TOMCAT中得到体现,TOMCAT5支持最新的SERVLET24和JSP20规范。因为TOMCAT技术先进、性能稳定,而且免费,因而深受JAVA爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的WEB应用服务器。TOMCAT很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。TOMCAT是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好APACHE服务器,可利用它响应对HTML页面的访问请求。实际上TOMCAT部分是APACHE服务器的扩展,但它是独立运行的,所以当你运行TOMCAT时,它实际上作为一个与APACHE独立的进程单独运行的。这里的诀窍是,当配置正确时,APACHE为HTML页面服务,而TOMCAT实际上运行JSP页面和SERVLET。另外,TOMCAT和IIS、APACHE等WEB服务器一样,具有处理HTML页面的功能,另外它还是一个SERVLET和JSP容器,独立的SERVLET容器是TOMCAT的默认模式。不过,TOMCAT处理静态HTML的能力不如APACHE服务器。第二章系统需求分析21功能需求浏览者在打开系统首页后,可以浏览公司的招聘信息,如果对某条招聘信息感兴趣可以查看具体的信息。如果感觉合适,可以在线投递个人简历。普通员工可以登录自己的个人空间,修改自己的登录密码,查看培训信息、查看奖惩想信息、查看工资信息。管理员可以进行员工管理、培训信息管理、招聘信息的发布以及应聘者信息的管理、奖惩管理、工资管理。因此角色分为三种普通浏览者,普通员工、管理员。1普通浏览者可以查看招聘信息,并且可以在线投递简历。2普通员工可以修改个人登录密码,查看培训信息,查看奖惩信息,查看薪金信息。3管理员(1)员工管理员工信息的录入、修改、删除。(2)招聘/应聘管理招聘信息的发布、删除;应聘信息的浏览及人才的入库。(3)培训管理培训信息的发布、培训信息的查看、培训效果的总结。(4)奖惩管理奖惩信息的录入、修改、删除。(5)薪金管理薪金信息的录入、修改、删除。22性能需求分析1准确性和及时性在系统设计和开发过程中,不但要保证本次数据处理结果的准确性,还要考虑本次数据处理结果对整个系统的影响,从而保证整个系统的正确性。系统在日常处理中的响应速度要达到实时要求,以及实时反馈信息。在系统设计和开发过程中,还要充分考虑系统当前和将来可能承受的工作量,使系统处理能力和响应时间能够满足用户对信息处理的要求。2系统的可扩充性系统在开发过程中,应该充分考虑以后的可扩充性。这些要求系统提供足够手段进行功能的调整和扩充。要实现这一点,应通过系统的开放性来完成,即系统应是一个开放的系统,只要符合一定的规范,可以简单的加入和减少系统的模块、配置系统的硬件。通过软件的修补、替换完成系统的升级和更新换代。可以说,具有良好的扩展性的软件才是优秀的软件。3、维护和升级方便性软件系统的改进和升级越来越频繁,C/S系统的各部分模块中有一部分改变,就要关联到其它模块的变动,使系统升级成本比较大。而本系统采用B/S处理模式,大大简化了客户端,只要客户端机器能上网就可以。对于B/S而言,开发、维护等几乎所有工作也都集中在服务器端,当企业对网络应用进行升级时,只需更新服务器端的软件就可以,这减轻了异地用户系统维护与升级的成本。所有的升级操作只需要针对服务器进行,对点多面广的应用是很有价值的,客户端分散,且应用简单,只需要进行简单的浏览和少量信息的录入。23可行性分析开发人力资源管理系统,符合国家提倡的办公自动化,提高使用效益的方向。利用先进的技术,使人的各种办公业务活动逐步由各种设备、各种人机信息系统来协助完成,达到充分利用信息、提高工作效率和工作质量,提高生产率的目的。技术可行性现有技术完全可以轻松实现该系统所有功能。如可以使用JAVA语言、STRUTS和HIBERNATE架构和MYSQL数据库等实现。经济可行性电脑处理大量数据的时候优势非常明显,比人工方式快的多,也更加准确,省时省力。操作可行性系统的使用极其简便,容易让人接受。经分析本次设计采用MYECLIPSE85为开发工具。JSP页面负责显示层;STRUTS作为控制层和显示层;HIBERNATE用来做持久层,因为它将JDBC做了一个良好的封装,在开发与数据库进行交互时可以不用书写大量的SQL语句。24输入输出需求要求用户输入输出界面尽可能简单明了,风格统一;充分为用户考虑,使用户能方便的使用软件,使应用程序界面能够吸引用户、方便用户操做即使在没有帮助的情况下能够比较容易的使用程序;用户输入给出格式参考或明确指示;要求对用户输入有容错能力;要求对大量用户信息输出规划整齐,尽量采用图表形式。25数据管理需求1数据录入的准确性和实时性数据的输入是否准确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而使系统的工作失去意义。数据的输入来源一是手工输入,二是由其它系统产生。手工输入要通过系统界面上的安排使系统具有容错性。而由其它系统生成的数据也要有必要的检查手段,以保证输入数据的准确性。在系统中,数据的输入往往是大量的,因此系统要有一定的处理能力,以保证迅速的处理数据。2数据的一致性和完整性由于系统的数据是共享的,在不同的模块或子系统中,报表、文件、数据库是共享数据,所以如何保证这些数据的一致性,是系统必须解决的问题。要解决这一问题,要有一定的人员维护数据的一致性,在数据录入处控制数据的去向,并且要求对数据库的数据完整性进行严格的约束。各模块之间对数据库的需求各有不同,但一定要协调好不同需求之间的关系。对于各模块都会用到的表一定要一致,不能有冲突。26故障处理需求由于软硬件及系统设计等各种因素,系统在使用过程难免会发生各种故障。系统应提供一定的对各种故障的检测能力,并提供相应的处理手段。对于硬件故障和系统软件故障,应由系统报告及处理;对于操作错误,要求有信息提示及正确方式。27运行环境需求服务器端开发系统WINDOWSXPPROFESSIONALJAVA开发包JDK60开发工具MYECLISPE85服务器TOMCAT6X开发框架STRUTSHIBERNATE数据库MYSQL50客户端CPUPR16GHZ内存1G第三章系统总体设计31系统功能版块划分系统功能版块按角色分为三大部分一般浏览者、普通员工、管理员。一般浏览者可以查看首页的招聘信息,也可以查看某条招聘信息的具体内容,还可以发送自己的简历。一般用户可以输入自己的用户名和密码登陆自己的空间,修改自己的密码、查看培训信息、查看奖惩信息、查看工资信息。管理员可以管理员工信息管理培训信息、管理奖惩信息、管理工资信息、管理招聘信息、管理普通浏览者投递的简历。32系统使用流程分析图31系统使用流程图由系统流程图可以看出,一般用户进入本系统首页后,无需登录可以浏览招聘信息以及发送简历。普通员工管理员登录后,修改个人密码、查看培训信息、查看奖惩信息、查看薪金信息。管理员可以管理员工信息、管理培训信息、管理奖惩信息、管理工资信息、管理招聘信息、管理普通浏览者投递的简历。33系统功能模块图下面是系统总体功能树,列出了各个模块的主要功能。图32系统总体功能树第四章数据库设计41MYSQL数据库管理系统数据库从最初的数据文件的简单集合发展到今天的大型数据库管理系统已经成为我们日常生活中不可缺少的组成部分。如果不借助数据库的帮助,许多简单的工作将变得冗长乏味,甚至难以实现。尤其是象银行、院校和图书馆这样的大型组织更加依靠数据库系统实现其正常的运作。再看互联网上,从搜索引擎到在线商场,从网上聊天到邮件列表,都离不开数据库。目前,市面上的数据库产品多种多样,从大型企业的解决方案到中小企业或个人用户的小型应用系统,可以满足用户的多样化需求。这里,我们所要向大家介绍的MYSQL数据库是众多的关系型数据库产品中的一个,相比较其它系统而言,MYSQL数据库可以称得上是目前运行速度最快的SQL语言数据库。除了具有许多其它数据库所不具备的功能和选择之外,MYSQL数据库是一种完全免费的产品,用户可以直接从网上下载数据库,用于个人或商业用途,而不必支付任何费用。MYSQL具有以下优点1同时访问数据库的用户数量不受限制;2可以保存超过50,000,000条记录;3是目前市场上现有产品中运行速度最快的数据库管理系统;4用户权限设置简单、有效;如今,包括SIEMENS和SILICONGRAPHICS这样的国际知名公司也开始把MYSQL作为其数据库管理系统,这就更加证明了MYSQL数据库的优越性能和广阔的市场发展前景。42数据库的需求分析数据库需要创建以下数据表1用户表信息(USER)用于存放用户信息。2应聘人员信息表(JOB)用于存放应聘人员信息3培训计划表(EDUCATE)用于存放培训信息和培训效果信息4奖惩信息表(RAP)用于存放奖惩信息5工资信息表(SALARY)用于存放工资信息6招聘信息表WORKS用于存放招聘信息43外部设计数据库使用MYSQL,数据库名称为“DB_LIYANG”。在本系统中一共包括6个实体,员工信息,应聘者信息、奖惩信息、培训信息、工资信息、招聘信息。44实体关系ER图设计图41人力资源管理系统ER图45创建数据库1启动NAVICAT选择开始所有程序PREMIUMSOFTNAVICATLITEFORMYSQL,然后单击“NAVICATLITEFORMYSQL”进入验证用户页面(如下图所示)。图42进入数据库时的身份验证输入主机名LOCALHOST(默认)、端口号3306(默认)、用户名ROOT、密码123。勾选保存密码下次登录时就不会弹出此页面,直接进入主页面。2通过身份验证后的界面下图是NAVICAT的主页面,可以在这里创建数据库。图43NATIVE主页3新建数据库右键单击上图红圈中的LOCALHOST选择创建数据库,将回弹出如下图所示的对话框在数据库名中写入DB_LIYANG作者名;在字符集选项中选择UTF8UTF8UNICODE确定数据库中的编码格式。单击确定完成数据库的创建。图44创建数据库4查看数据库当完成上面的操作后在LOCALHOST下面会有一个DB_LIYANG的数据库,可以在该数据库中创建表和视图。图45新建的DB_LIYANG数据库以及表46数据库设计系统设计阶段的数据库设计是以系统分析阶段的成果和数据流程图为依据的设计。数据库在一个管理信息系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。设计数据库时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。数据库设计一般包括数据库逻辑设计和数据库物理设计。逻辑设计的任务就是把概念设计阶段设计好的基本ER图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。逻辑设计时一般要分三步进行第一步将概念结构转换为一般的关系、网状、层次模型;第二步将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换;第三步对数据模型进行优化。为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计。数据库的物理设计通常分为两步第一步确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;第二步对物理结构进行评价,评价的重点是时间和空间效率。设计优化的物理数据库结构,具有可靠性、有效性、可修改性和可移植性等特点。使得在数据库上运行的各种事物响应时间小、存储空间利用率高、事物吞吐率大。为该系统设计的逻辑数据模型与物理结构的对应数据表如下所示(1)员工信息表(包括员工ID、员工姓名、登录密码、性别、出生日期、创建时间、是否是管理员、人员简介。其中员工ID为主键)图46员工信息表的设计(2)应聘者信息表(应聘者ID,应聘者姓名,性别、工作经验、所学专业、职位、毕业院校、电话号码、EMAIL、创建时间、应聘人员简介、是否入库。其中应聘者ID为主键。)图47应聘者信息表的设计(3)培训信息表(培训ID、培训名称、培训目的、培训开始时间、培训结束时间、讲师、培训人员、培训教材、培训是否完成、培训效果。其中培训ID为主键)图48培训信息表的设计4)奖惩信息表(奖惩ID,奖惩名称,奖惩原因,说明,创建时间。其中奖惩ID为主键)图49奖惩信息表的设计(5)薪金信息表(薪金ID,员工名称、基本薪金、餐补、房补、全勤奖、税赋、奖惩、总计。其中薪金ID为主键)图410薪金信息表的设计(6)招聘信息表(招聘信息ID,工作名称、工作部门、开始时间、结束时间、联系电话、工作地点、工作经验、专业、工资、详细经历。招聘信息ID为主键)图411招聘信息表的设计47数据库保密设计用户在登陆人力资源管理系统时就会获得相应的角色,根据角色的不同,其对数据库的访问权限就不尽相同。48数据库的连接481HIBERNATE简介本系统采用HIBERNATE作为数据持久层框架。HIBERNATE是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得JAVA程序员可以随心所欲的使用对象编程思维来操纵数据库。HIBERNATE可以应用在任何使用JDBC的场合,既可以在JAVA的客户端程序使用,也可以在SERVLET/JSP的WEB应用中使用,最具革命意义的是,HIBERNATE可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。HIBERNATE的核心接口一共有5个,分别为SESSION、SESSIONFACTORY、TRANSACTION、QUERY和CONFIGURATION。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五个核心接口分别加以介绍。SESSION接口SESSION接口负责执行被持久化对象的CRUD操作CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。但需要注意的是SESSION对象是非线程安全的。同时,HIBERNATE的SESSION不同于JSP应用中的HTTPSESSION。这里当使用SESSION这个术语时,其实指的是HIBERNATE中的SESSION,而以后会将HTTPSESION对象称为用户SESSION。SESSIONFACTORY接口SESSIONFACTORY接口负责初始化HIBERNATE。它充当数据存储源的代理,并负责创建SESSION对象。这里用到了工厂模式。需要注意的是SESSIONFACTORY并不是轻量级的,因为一般情况下,一个项目通常只需要一个SESSIONFACTORY就够,当需要操作多个数据库时,可以为每个数据库指定一个SESSIONFACTORY。CONFIGURATION接口CONFIGURATION接口负责配置并启动HIBERNATE,创建SESSIONFACTORY对象。在HIBERNATE的启动的过程中,CONFIGURATION类的实例首先定位映射文档位置、读取配置,然后创建SESSIONFACTORY对象。TRANSACTION接口TRANSACTION接口负责事务相关的操作。它是可选的,开发人员也可以设计编写自己的底层事务处理代码。QUERY和CRITERIA接口QUERY和CRITERIA接口负责执行各种数据库查询。它可以使用HQL语言或SQL语句两种表达方式。482配置数据库中的表与实体BEANS之间的联系。1)创建实体BEANS和USER表之间联系的USERHBMXML文件2)创建实体BEANS和JOB表之间联系的JOBHBMXML文件3)创建实体BEANS和EDUCATE表之间联系的EDUCATEHBMXML文件4)创建实体BEANS和RAP表之间联系的RAPHBMXML文件5)创建实体BEANS和SALARY表之间联系的SALARYHBMXML文件6)创建实体BEANS和WORKS表之间联系的WORKSHBMXML文件483配置HIBERNATECFGXML文件ORGHIBERNATEDIALECTMYSQLDIALECTJDBCMYSQL/LOCALHOST3306/DB_LIYANGUSEUNICODETRUECHARACTERENCODINGGBKROOT123COMMYSQLJDBCDRIVERTRUE第五章系统详细设计与实现51STRUTS1框架工作原理511STRUTS1工作原理STRUTS框架具有组件的模块化,灵活性和重用性的优点,同时简化了基于MVC的WEB应用程序的开发。STRUTS跟TOMCAT、TURBINE等诸多APACHE项目一样,是开源软件,这是它的一大优点。使开发者能更深入的了解其内部实现机制。除此之外,STRUTS的优点主要集中体现在两个方面TAGLIB和页面导航。TAGLIB是STRUTS的标记库,灵活运用,能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许STRUTS是一个很好的起点。关于页面导航,我认为那将是今后的一个发展方向,事实上,这样做,使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。尤其是当另一批开发者接手这个项目时,这种优势体现得更加明显。另外,STRUTS是业界“标准“(很多成功案例),学习资源丰富,HTML标签非常优秀。STRUTS跟TOMCAT、TURBINE等诸多APACHE项目一样,是开源软件,这是它的一大优点。使开发者能更深入的了解其内部实现机制。STRUTS开放源码框架的创建是为了使开发者在构建基于JAVASERVLET和JAVASERVERPAGES(JSP)技术的WEB应用时更加容易。STRUTS框架为开放者提供了一个统一的标准框架,通过使用STRUTS作为基础,开发者能够更专注于应用程序的商业逻辑。STRUTS框架本身是使用JAVASERVLET和JAVASERVERPAGES技术的一种MODELVIEWCONTROLLER(MVC)实现。具体来讲,STRUTS的优点有1实现MVC模式,结构清晰,使开发者只关注业务逻辑的实现。2有丰富的TAG可以用,STRUTS的标记库TAGLIB,如能灵活动用,则能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许STRUTS是一个很好的起点。3页面导航页面导航将是今后的一个发展方向,事实上,这样做,使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有。着莫大的好处。尤其是当另一批开发者接手这个项目时,这种优势体现得更加明显。4提供EXCEPTION处理机制。5数据库链接池管理。6支持I18N。512STRUTS1的工作流程图图51STRUTS1工作流程图第一步应用程序启动后,先将STRUTSCONFIGXML的文件加载到内存中。第二步当客户端浏览器提交一个请求时,他会根据提交的请求中的路径,在STRUTSCONFIGXML的下的ACTION节点中,寻找和提交的DO为某个特定名称相匹配的PATH属性。第三步和这个匹配的PATH一组的有NAME这一属性。根据这个NAME属性的值在这一节点下寻找一个中NAME和他一样的节点。第四步根据同一节点下的TYPE属性会找到一个类。它是一个JAVABEAN。它继承自ACTIONFORM这个类。它里面提供的一组字段,找到这个类后它会利用JAVA的反射机制自动创建一个类的对象,并将客户提交的数据进行封装。这里需要注意的是,里面提供的字段必须和FORM表单中的控件名称一致。第五步执行完以上步骤后,会接着寻找刚才在下的ACTION节点下的TYPE属性,根据这一属性也会寻找到一个类,这个类就是上图中的第二行右边红色的块。这个类继承自ACTION类。在这一类中需要重写父类的EXCUTE方法。参数共个,后面会有叙述。找到这个类后会自动调用重写过的这个方法。这个方法的返回值为ACTIONFORWARD。参数共个ACTIONMAPPING,ACTIONFORM,HTTPSERVLETREQUEST,HTTPSERVLETRESPONSE。后面两个好理解,第二个是ACTIONFORM。其实就是前面提到过的JAVABEAN,第一个是一个ACTIONMAPPING,他能得到刚才前面ACTION接点下的子接点。第六步通过EXCUTE方法处理完业务后回返回一个ACTIONFORWARD对象,根据返回值会在和ACTION接点中的NAME自动匹配并根据该接点中PATH属性进行跳转页面。这里的跳转默认是请求转发,如果需要重定向的话,需要配置REDIRECT属性为TRUE。513STRUTS1的开发流程1创建JSP页面2创建ACTIONFORM如果是表单的话就要对应上JSP上的表单元素3创建ACTIONFORM转型、业务处理、跳转4在STRUTSCONFIGXML上注册对应的ACTION配置和ACTIONFORM配置52人力资源管理系统的简历发送页面设计与实现首页的发送简历设计如下图所示图52主页面发送简历页面1发送按钮所对应的提交ACTION为JOBDOACTIONADDJOB。2创建用于接收注册页面提交的注册信息的FORMS。此JOBFORM为ACTIONFORM的子类,用于在ACTION中向下专型为JOBFORM并获取其中的参数。PUBLICCLASSJOBFORMEXTENDS

温馨提示

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

评论

0/150

提交评论