基于J2EE的人事管理系统毕业论文.doc_第1页
基于J2EE的人事管理系统毕业论文.doc_第2页
基于J2EE的人事管理系统毕业论文.doc_第3页
基于J2EE的人事管理系统毕业论文.doc_第4页
基于J2EE的人事管理系统毕业论文.doc_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

东华理工大学毕业设计(论文) 目录基于J2EE的人事管理系统毕业论文目 录摘 要IABSTRACTII第1章 绪论11.1 论文选题背景11.2 研究目的及意义11.3 论文的组织结构2第2章 系统开发相关技术32.1基于 B/S 的开发模式32.2 MyEclipse简介32.3 MySQL简介42.4 Struts 框架结构与 MVC 架构42.5 Hibernate简介5第3章 系统分析63.1 系统需求分析63.2 系统功能分析63.3 系统数据流分析73.4 系统可行性分析7第4章 系统设计94.1 系统设计目标94.2 系统功能模块设计94.3 系统数据库设计104.4 系统安全性设计13第5章 系统实现145.1 用户登录145.2 人员管理155.3 招聘管理175.4 培训管理195.5 奖惩管理225.6 薪金管理235.7 部门人员信息24第6章 软件测试266.1 软件测试方法266.2 软件测试的目的266.3 测试266.4 测试用例276.5 测试总结28第7章 总结与展望297.1总结297.2展望29致 谢30参考文献31I东华理工大学毕业设计(论文) 第1章 绪论第1章 绪论1.1 论文选题背景 自20世纪末期以来,随着飞速发展的电子信息技术和逐渐兴起的计算机技术,世界经济开始了迅猛的发展。“信息技术时代”成为人们对这个时代的称呼,这也充分的体现出了数字信息化在这个时代的重要性。 但与此同时,很多专家学者更喜欢称其为“新经济时代”。如今,随着信息技术和计算机互联网技术的飞速发展,计算机在人们的工作和生活中扮演着不可或缺的角色,在方便和服务人类社会的同时,也不断的促使着传统产业进行改革和升级,这是一个随时都在发生巨大变革的时代。国家和企业想要繁荣和发展,就必须革新他们的技术。因此,信息化和数字化成为他们升级的重要手段。技术的不断发展和升级,数字化和信息化成为主要的发展方向。在商业竞争中,技术进步就以为着企业能够占据更高的地位。在这两个因素的双重作用下,企业所不能缺少的日常信息管理和发展已经越来越离不开信息技术,一个企业的信息管理系统是否足够完善和高效从某些方面决定着企业是否能够高效的运作。因此,信息管理数字化已经成为企业健康、高效运行的一项重要因素。在这样的背景下,对企业人力资源进行有效的管理自然而然的成为企业管理中非常重要的内容之一,人力资源管理系统也成为了企业管理者管理企业中员工的重要手段以及时了解人员的情况。要开发一个功能完整、高效、可行,并且成本能够被接受的人力资源管理系统,就必须对企业管理中的人员基本信息,招聘信息、公司培训信息、薪资福利、部门信息、等各方面的内容进行系统的分析,然后确定各个模块的功能。系统用数据库将与员工有关的信息统一管理起来,这样不仅能有效的保存员工信息和公司的失误,还能及时更新信息,实现资源的共享,充分的避免了传统的人工管理操作出现的差错。1.2 研究目的及意义 传统的企业人力资源管理方式不仅复杂繁琐,还存在着许多的缺点。随着时间一长,由于人员更变和企业的发展所产生的大量文件和数据将会使数据库非常的庞大,这非常不利于查找及维护,并且很容易出错。另外为及时了解企业员工的情况,确保企业的正常运作,用传统管理模式的管理员需要花费大量的时间和精力才能够进行各种数据记录、数据更新和统计等工作,这非常不利于长远的发展。随着时代的变迁和技术的日新月异,计算机技术逐渐显现出其它技术不能比拟的优点。现在计算机硬件发展得非常快速,大容量、高速率的计算机成为代替人们进行计算工作的工具。同时,随着计算机软件技术的日渐成熟,人们已经充分感受到了其便捷、高效的特点,软件技术也逐渐渗入了各个领域中,在很多关键的部分扮演着非常重要的角色。它们都是计算机应用中非常重要的部分,因此使用计算机技术对企业的人力资源进行管理是发展的潮流和趋势。它有着非常多的传统人力资源管理不能做到的优点。这些优点能够提升企业的效率,为企业带来更大的效益。因此,企业是非常需要一个这样的人力资源管理系统,此次研究的目的便是为企业开发一个这样的系统。研发该系统的意义在于,它能够更高效、更规范的管理企业人力资源,同时,在现在的企业规模处于一个日渐扩大的趋势下,如果有这样一个系统来帮助管理员来管理公司的各种信息,那将能够大大提升公司的效率。也能够有效的快速查询公司人员的情况,这样管理员就能很方便的对他们所需要的信息进行提取、分析,对功能进行总结,以简化和改进程序,从而减少成本,节约人力,提高管理的效率。设计一个合理高效的系统,可以加快企业的信息化的过程,降低企业进入数字化的门槛。1.3 论文的组织结构第1章 论述了在当今时代背景下,计算机信息技术的发展情况和企业人力资源管理研究的基本现状。介绍和分析了与此次设计相关的各方面的因素,对全文进行了一个总体概述。第2章 主要是对此次系统设计所涉及的关键技术的介绍,它们在系统的开发过程中是非常重要的部分。 第3章对系统进行了整体的分析,通过系统功能概述、开发工具和技术的选择与介绍以及对本次设计的可行性分析来确定此次在设计初期应该进行什么工作,为后面的设计工作规划了一个总体的思路。 第4章则是系统的详细设计流程,给出了在设计过程中具体实现功能的思想和算法,以及相应的系统流程图。数据库管理是必不可少的,本章也对系统所采用的数据库系统进行了分析和实现,以达到正确和高效的处理数据信息。 第5章是对系统进行代码实现,这部分是将设计转变为实际软件的关键步骤。论述了系统各个功能模块的实现,并通过关键代码以及界面截图来加以说明。第6章则是对本次设计的总结和展望,除了系统的分析了此次设计各方面的结果,同时也指出了系统存在的不足,以及能够进一步改进的地方。30东华理工大学毕业设计(论文) 第2章 系统开发相关技术第2章 系统开发相关技术2.1基于 B/S 的开发模式 当计算机的数量以几何级增长,因特网也越来越大,其重要性也逐渐突出。作为最快速方便的方式,浏览器技术已经成为了实现很多功能最优先的选择,因此,B/S(浏览器/服务器)模式也越来越受到开发者和用户的青睐。由于其先进性和其他特性都非常吻合当今的基于大型数据库的信息系统的需求,很多开发系统的公司都在采用这种全新的技术模式。一般来说,浏览器/服务器模式由三个部分组成,分别是浏览器、Web服务器和数据库服务器。在这种模式下,浏览器就代替了客户端,在浏览器中便可以使用各种的应用软件,同时几乎所有的用户操作都可以在浏览器中进行。该结构的核心部分是Web 服务器,它提供支持其他部分的功能。它主要的作用是,接收用户查询请求,然后根据请求在数据库服务器中寻找到相关的数据,根据它们之间的联系生成相应的HTML代码,最后将查询的结果传送回浏览器进行显示。浏览器是这个系统的“前台”,用户通过浏览器对数据进行更改、删除、新增等一系列的操作,然后将请求发送Web服务器,而数据库服务器就是“后台”,由它来负责这些工作。2.2 MyEclipse简介Eclipse是现在软件开发中非常受欢迎的软件开发环境之一,不同用户可以根据自身的特点来安装各种插件,便可以实现相应的功能,而Myeclipse就是Eclipse中的一个插件集。开发者在开发系统或软件时,需要经常用到一些插件,为了方便,MyEclipse就将这些插件集合封装起来,这样就可以很快速方便的使用各种插件的功能。与其他不同的是,它是收费的。 Eclipse是一个基于Java的,安全、高效、多线程、健壮、可移植、可扩张的开发平台,因此,它也是开发源代码的。很多人习惯性的认为,Eclipse就是Java的开发平台,但是实际情况并非如此。实际上它支持很多其他的语言,也能够当做用其它语言开发软件的平台,比如同样很常用的C/C+。所以,只要为Eclipse提供支持相应语言的插件,它就可以构建出相应的开发环境,这是非常方便的。 现在有很多开源的工具,但是大多开源代码的工具都是不一致的,也存在很多缺点,而MyEclipse或许能够解决大部分的问题。MyEclipse中有一个重要的“加速器”NitroX,它是开发Web应用非常实用的工具之一,功能就是加速程序的编译和运行。在编译JSP和Struts Web应用方面,还有一个很实用和高效的工具,AppXRay,而这些工具的作用就是快速解析Java和XML配置文件以提高软件运行的速度。 MyEclipse提供的大量的使用的工具,凸显出其实用价值。常用的各种编辑器能够帮助程序自动产生项目所有必须的组件,这极大的减轻了程序员的压力,同时也加快了软件开发的速率。在数据库方面,它会相应的创建Hibernate配置文件和执行SQL语句的工具,以提高处理数据的效率。2.3 MySQL简介 MySQL数据库系统属于关系型数据库管理系统,由Sun公司开发,之后被Oracle公司收购。MySQL是当今非常流行的一种数据库系统,受到了很多开发者的青睐。在Web开发应用方面,MySQL有着非常多其他数据库系统无法比拟的优点。MySQL与传统的数据库系统存储的方式不同,它将数据分表存储,然后根据数据之间的关系进行关联。这种存储方式就使得它具有很高的数据处理速度和很好的灵活性。SQL语言是MySQL使用的语言,可以对数据库进行访问及其他操作,它是一种很方便的、高效的,常用标准化语言。根据不同的规模和功能,MySQL 软件有两个版本,分别是社区版和商业版,不同的用户可以有适合本身特点的选择。对一般中小型网站的开发者而言,开发网站必须优先考虑经济因素,而由于MySQL的特点,使用它来进行系统开发能够保证较低成本,加上它是开放源码的,MySQL成为了他们优先的数据库系统选择。通常配合PHP和Apache可以组成一个功能较完善并且相当良好的开发环境。虽然对于大型企业来说,巨大的数据量使得MySQL显得不足,和其他的大型数据库系统相比,MySQL的规模和功能就显得不够用。然而对于一般的用户而言,开发一个较小的系统,实用而廉价的MySQL就已经绰绰有余,同时作为一个开放源码软件,在经济方面就有巨大的优势。要建立一个稳定、免费的网站,可以采用四个免费或开源的软件,分别是Linux操作系统,Nginx服务器,PHP服务器以及MySQL数据库。这种方式被称为LNMP组合,由于具有很高的实用性和经济性,它经常被系统开发者采用。2.4 Struts 框架结构与 MVC 架构 Struts是一种在应用在JavaEE Web开发的框架技术。其中主要的技术是Servlet和Java Server Pages,它们也是网页开发中比较重要的技术。由于它能使开发更简单和易操作,并且能够提供工作效率以缩短系统开发的时间,Struts框架在网页开发中也受到了很大的重视。Struts的特点是,以HTTP为中心、轻量级、开源、基于设计模式、扩展性,模型无关等等。Struts采用Model2,包括模型(Model),视图(View)和控制器(Controller)三部分。 MVC架构是模型-视图-控制器的缩写,是一种经典的软件设计模型。这样它减弱各自层的责任,每一层在做好自己的工作的同时,还需要联系其他层,并提供相应联系的服务。视图的功能是展示内容,很多技术,如Flash,XHTML,XML/XSL 等标识语言和 Web services都可以应用在视图层中来增加视图功能的丰富性和多样性。随着模型的改变,视图层会相应的更新展示的内容。模型层规定了软件的模式,规划了各个功能的结构和层次。2.5 Hibernate简介Hibernate是服务于数据库的框架,它对Java Database System进行了轻量级的对象封装。由于使用的是对象编程思维,Java程序员可以方便的操纵数据库。由于既可以在Java的客户端程序使用,也可以在其他很多模式的Web应用开发中使用,Hibernate被广泛的应用使用JDBC的场合。值得一提的是,Hibernate在J2EE中非常重要,因为它能够完成数据的信息持久化。Hibernate一共有5个核心接口,这些接口都是非常重要的,因而几乎所有的开发中都会用到它们。这些接口的作用,不只是存取持久化的对象,还有对事务进行相应的控制。东华理工大学毕业设计(论文) 第3章 系统分析第3章 系统分析为了精确地分析出企业人力资源管理系统的特点,本文通过需求分析、功能分析、数据流分析,对此次设计的人力资源管理系统的各个模块和功能进行了详细的分析,构建出了该系统总体框架,为之后的详细设计开发规定了方向。3.1 系统需求分析通过合理科学的管理人力资源,能够及时掌握公司的人员情况,充分的利用人才来创造更大的效益。在这个人才竞争的时代,公司之间的竞争实际上就是人才的竞争,因此,人才的利用率的提高也就意味着公司竞争力的提高。企业内部信息的到了快速、高效的管理,对企业的做出决策、制订发展计划有很好的提升,使企业能够快速的在这个信息化时代中把握住了数据方面的优势。同时,对公司员工的有效管理,做出适合员工情况的情况,还能提高员工的工作热情和效率,促进员工之间的关系,使员工能够更好的生活和工作。在该系统中,员工最关注的是奖惩和薪酬管理的部分,它们反映了员工的工作情况,这样能够帮助人事部管理员及时做出调整,保证员工的稳定,也让员工可以及时了解与自己相关的信息。同时及时更新培训的信息,可以根据情况制定培训计划以满足公司的发展情况。3.2 系统功能分析本系统分为六大功能,分别为人员信息管理、招聘管理、培训管理、奖惩信息管理、薪酬管理以及部门信息管理。具体说明如下。人员信息管理:主要是用来管理企业员工的一些基本信息,如姓名,性别,出生日期等等。招聘管理:主要是为了满足企业的招聘管理,包括企业的招聘信息、应聘信息、企业人才库等等信息。培训管理:主要为了方便企业开展培训计划,包括企业的培训计划、培训实施、培训时间、培训材料等等信息。奖惩管理:主要是记录员工工作的状况,包括对奖惩信息等等信息进行管理。薪酬管理:反映员工本月工作情况的好坏,计算员工该得的薪金。部门信息:是为了方便管理员查询各部门人员的信息。3.3 系统数据流分析 基于以上功能需求分析和功能分析描述,本部分将针对系统功能需求中的数据进行梳理分析,数据流图能够很好的描述系统的数据流,根据数据在系统中的流动方向,画出 DFD 图,可以很好的说明系统的数据需求。首先超级管理员根据系统后台嵌入的超级管理员账号和密码进入系统之后,可以给其低优先级的用户分配账号和密码,然后用户可以用超级管理员分配的账号和密码(初始化的密码)登入系统,进行自我信息的维护。系统中各数据流动的情况如图3-1所示:图 3-1 人事管理系统数据流图3.4 系统可行性分析可行性分析在系统开发过程中是一项不可或缺的步骤。它是通过实际的调研,根据收集到的各种资料,来判断新系统的研发能否正常进行,即是否具备可能性和必要性。还要从经济、技术等各方面对所要开发的系统进行正确的研究和分析,以避免在开发时出现问题,而导致投资失败。进行系统的可行性分析,就是尽量用最小的代价来确定存在的问题,并判断这些问题能否得到解决。本系统的可行性分析主要从技术和经济两方面来考虑:(1)技术可行性:为了方便和高效,同时考虑到可用技术的限制,本系统采用了的是简单高效的B/S模式。在软件方面,以MyEclipse 6.0.1为开发平台,数据库服务则选用目前比较流行的Mysql数据库,它能满足中小型系统的数据处理,同时能够较好的保持数据中信息的完整性。Mysql中还有许多其他的功能,这些功能对我们开发软件有很大的帮助。在性能方面,可以满足基本的性能需求,使开发者有一个良好的编程环境。由于此系统是使用网页作为服务端的,因此需要用浏览器来实现功能,选择IE浏览器进行开发设计。(2)经济可行性一般来说,开发这样一个规模较小的软件,当前可使用的软、硬件设备都能够很完好的满足系统的需求,所以,开发一个满足设计需求的人力资源管理系统的总体投入比较小,是可以接受的。通过分析,本系统是在实现所有必要的功能的前提下,尽量使其简练,最大程度上简化了繁琐的开发步骤,减少了系统开发的工作量和时间。同时,本系提供了很多接口以满足不同情况下不同的需求,开发者可以根据自身需求对系统进行相应的改进,这也就意味着系统的运行效率和设备的利用率就比较高。因此在经济上该系统的开发是可行的。 综上所述,基于J2EE的企业人力资源管理系统的开发是完全可行的。东华理工大学毕业设计(论文) 第4章 系统设计第4章 系统设计4.1 系统设计目标 本系统是为了某企业的人事处所设计的软件,因此系统的设计目标是使得能够服务于企业内部的人力资源管理。通过应用本系统,企业管理者就能够及时掌握企业人员以及各部门的基本情况,并根据企业的状况来制定相应的计划和工作,使得公司能够健康、高效的运行。4.2 系统功能模块设计该人力资源管理系统为公司内部人员服务的,由管理员为每位员工分配可用的账号和密码,企业内部的员工可以使用该系统。内部员工只能通过输入合法的用户名和密码才能登录系统并进行各种操作。根据需求,系统分为6大模块,该系统功能设计结构如图4-1所示。图4-1 系统功能模块图 各模块的功能说明如下:(1)人事管理人事管理模块主要功能是对人员信息进行管理。该模块包括四个子功能,分别是人员信息录入、人员信息查询、人员信息修改和人员信息删除。人事管理是人力资源中非常重要的一个部分,管理员可以通过这些功能管理公司员工的情况,并能够及时进行更新。(2) 招聘管理 招聘管理模块主要功能是管理公司招聘情况的信息,包括应聘信息录入、查询、修改与删除以及人才库信息浏览的功能。管理员可以通过该模块管理招聘信息和应聘人员的情况,方便公司管理者进行招聘工作。(3)培训管理培训管理模块主要功能是管理公司培训计划的信息,主要包括培训信息录入、修改、删除等功能。在查询功能中,可以查看到每个培训的详细信息。该模块是为了方便公司的管理人员及时了解公司的情况,指定合适的培训方案。(4) 奖惩管理 奖惩管理模块的主要功能是管理员工奖惩情况的信息,主要包括奖惩信息录入、修改、删除和奖惩信息查询功能。在查询子模块中,员工可以查看到详细的奖惩信息,保证公平公正。该模块是为了让企业管理者和员工能够了解员工的工作情况,以做出相应的调整。(5) 薪金管理 薪金管理模块的主要功能是管理员工薪金情况的信息,主要包括薪金信息录入、修改、删除和薪金信息查询功能。在查询子模块中详细的列出了每个员工各项所得薪金的情况。该模块能够反映出员工工作情况,也是员工非常关心的内容。(6) 部门管理 部门管理模块的主要功能是管理各部门人员的情况,该部分的主要功能是分部门查看人员信息,在该模块中也可以进行人员信息的修改和删除。考虑到公司的部门较多,员工数量也很多,因此分部门查询员工信息可以节省管理者的时间。4.3 系统数据库设计能否建立一个高效、便于管理的数据库直接影响系统的好坏和效率,考虑到本系统实体之间关系比较复杂,采用MySQL-Front可视化工具,它可以快捷方便的管理数据信息。本系统所用到的数据表信息如下: (1)人员信息表人员信息表存储的是企业员工的一些基本信息,包括员工的姓名(用户名)、密码、性别,所属部门、联系电话等。人员信息表如表4-1:表4-1 人员信息表(users)字段名数据类型是否主键描述IdInt(11)是 员工编号UsernameVarchar(255)否 用户名PasswordVarchar(255)否 密码SexBit(1)否 性别BirthdayDatetime否 出生日期CreatetimeDatetime否 创建日期IsadminBit(1)否 是否管理员ContentText否 简介MinzuVarchar(255)否 民族BumenVarchar(255)否 所属部门EducationVarchar(255)否 学历AddressVarchar(255)否 地址IdnumberVarchar(255)否 身份证号PolVarchar(255)否 政治面貌TelVarchar(255)否 联系电话 员工编号作为主键,设置为自动增长。其中密码在查看的时候会以密码的形式显示,以保证账户的安全。出生日期和创建日期都必须以日期的格式填写,性别和“是否管理员”都是复选框,0表示否,1表示是。其他字段都是字符型。 (2)奖惩信息 奖惩信息存储的是员工作情况的信息,包括奖惩名称、原因、说明和时间等。表4-2 奖惩信息表(institution)字段名数据类型是否主键描述IdInt(11)是 奖惩编号nameVarchar(255)否 奖惩名称reasonVarchar(255)否 奖惩原因explainsVarchar(255)否 奖惩说明createtimeDatetime否 创建时间 奖惩编号作为主键,设置为自动增长。 (3)应聘信息表应聘信息表存储的是应聘人员的一些基本信息,包括应聘者的姓名、性别、年龄、应聘职位、学历、电话号码等。表4-3 应聘信息表(job)字段名数据类型是否主键 描述IdInt(11)是 应聘人员编号nameVarchar(255)否 应聘人员姓名sexBit(1)否 应聘人员性别ageBit(1)否 应聘人员年龄jobVarchar(255)否 应聘人员职位specialtyVarchar(255)否 所学专业experiencetVarchar(255)否 工作经验studyeffortVarchar(255)否 学历schoolVarchar(255)否 毕业学校telVarchar(255)否 电话号码 emailVarchar(255)否 Email地址createtimeDatetime否 创建时间contentText 否 详细经历isstockBit(1)否 是否入库 应聘人员编号作为主键,设置为自动增长。 (4)培训信息表 培训信息表存储了公司开展培训的一些必要信息,包括培训名称、目的、开始和结束时间、讲师、学员和培训效果等。表4-4 培训信息表(education)字段名数据类型是否主键描述IdInt(11)是 培训编号nameVarchar(255)否 培训名称purposeVarchar(255)否 培训目的begintimeDatetime否 培训开始时间endtimeDatetime否 培训结束时间datumText 否 培训材料teacherVarchar(255)否 培训讲师studentVarchar(255)否 培训人员createtimeDatetime否 创建时间educateBit(1)否 培训是否完成effectVarchar(255)否 培训效果summarizeText 否 培训总结 培训编号作为主键,设置为自动增长。 (5)薪金信息 薪金信息表记录了公司员工各项指标所得到或所扣除金额的信息,统计了各个员工获得的薪金。其中包括了基本薪金、饭补、房补、各种奖惩等信息。表4-5 薪金信息表(stipend)字段名数据类型是否主键描述IdInt(11)是 薪金编号nameVarchar(255)否 员工姓名basicVarchar(255)否 基本薪金eatFloat否 饭补houseFloat否 房补granttimeDatetime 否 工资发放时间scotFloat否 全勤奖dutyFloat否 赋税punishmentFloat否 罚款otherFloat否 额外补助totalizeFloat否 总计薪金 应聘人员编号作为主键,设置为自动增长。4.4 系统安全性设计 (1)系统采用权限访问机制 本系统仅面向企业内部员工,因此用户要登录系统时必须进行身份认证,只有输入合法的用户名及密码才能登录系统,以保证企业信息安全。系统通过匹配数据库中的信息来判断用户名密码是否正确,只有当通过身份认证后,用户才可以进行各种操作。 (2)数据库加密 用户密码是需要受到保护的,因此需要的对数据库中密码进行加密存储。本系统通过加密技术将密以密文形式输出,不会造成密码被他人获取,保证了用户信息的安全,同时也保证了系统的安全。 (3)数据备份与恢复 为了防止数据库在使用过程中某种原因受到破坏而造成数据的丢失,必须指定一种能够保证数据能够恢复的方案,同时也为了方便系统的恢复和其他操作,数据备份与恢复是一项必须的工作。MySQL本身提供了备份和恢复的功能,在开发系统的过程中应用这些功能便可以保证数据的安全与完善。东华理工大学毕业设计(论文) 第5章 系统实现第5章 系统实现5.1 用户登录用户要进入该系统,必须使用有效的账号密码登录,才能进入该系统。用户名和密码分别对应数据库中users表的username和password字段。登陆界面如图5-1所示:图5-1 用户登录页面该登录界面主要是使用HTML/CSS技术,分别添加图片、文本、编辑框和按钮即可实现。该功能的设计思路是,定义的session变量接收输入的用户名和密码,Serverlet则会根据Struts框架中的ActionForm进行数据匹配,如果用户名和密码正确,则自动进入系统,否则系统提示错误,无法进入系统。 实现用户登录功能的关键代码为: UsersForm usersform=(UsersForm)form; Users users=new Users(); users.setUsername(usersform.getUsername(); users.setPassword(usersform.getPassword(); boolean flag=dao.logonUsers(users); if(flag) request.getSession().setAttribute(users,users); return mapping.findForward(success); else request.setAttribute(error, 登录失败); return mapping.findForward(failed); 登录成功后,进入如图5-2所示页面:图5-2 系统首页该页面的作用是让用户清楚地了解网站主要的功能,起到一个导航的作用,让用户能够找到自己想要的东西并进行相应的操作,所以该页面的设计必须简洁明了。5.2 人员管理 人员管理模块包括人员信息录入、查询、修改和删除。 (1)人员信息录入 人员信息录入如图5-3:图5-3 人员信息录入页面管理员按要求依次录入员工的各种信息,点击保存即保存信息。本功能的设计思想是,在JSP页面中定义了一个session对象,当用户输入数据时,这个session便会获得各个字段的数据,根据Struts框架中的.xml中定义的结构,调用相应的Action将数据存入数据库中。 该功能主要在UsersDao中实现,通过Serverlet控制器实现各种操作,该功能的关键代码如下:Private ActionForward addUsers(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) UsersForm usersform=(UsersForm)form;/获得UsersForm Users users=usersform.populate(); /获得提交的人员信息 dao.addUsers(users);/完成人员信息保存 return mapping.findForward(success);/跳转到成功页面private ActionForward listUser(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) request.setAttribute(list,dao.listUser();/将人员信息列表保存到request范围 return mapping.findForward(success);/跳转到成功页面 (2)人员信息查询信息保存之后便存入了数据库的users表中,可以通过人员信息查看获取员工信息。效果如图5-4:图5-4 人员信息查询页面 为了保证用户信息的安全,在该页面中,密码以密文形式显示。执行操作中还有对人员信息进行修改和删除本条记录的操作。点击修改则跳转回信息录入界面,可以重新编辑。点击删除则会将该条记录删除掉。此查询功能的设计思路是,在jsp中的session.setAttribute(U,users)可以使其它任何页面可以获得该session的值,即值为“users”的对象,因为session贯穿于整个页面始终。得到了人员信息表(users)的信息之后,调用Action将其按表格的形式输出,该功能的关键代码如下:public List listUser()/显示人员列表 Session session = HibernateSessionFactory.getSession();/获得Session对象 Query query = session.createQuery (select u from Users as u order by createtime);/执行查询 List list = query.list();/获得查询列表 HibernateSessionFactory.closeSession();/关闭Session对象 System.out.println(list); return list;/返回人员列表5.3 招聘管理 招聘管理主要包括三个功能,分别是应聘信息录入,应聘信息查询,人才库浏览。管理员根据规则填写应聘者的信息。应聘信息录入部分如图5-5:图5-5 应聘信息录入页面应聘信息录入模块与人员信息录入的原理是相似的,也是通过session获得各个字段的数据,根据Struts框架中的.xml中定义的结构,调用相应的Action将数据存入数据库中。该功能主要在JobDao中实现,Serverlet控制它来进行各种操作。录入信息之后,点击保存即存储了该条信息。通过应聘信息查看可以查看到人员的信息,如图5-6:图5-6 人才信息查询页面该功能也是通过session对象,调用对应的Action以表格的形式输出应聘信息表(Job)中的部分信息。设计中,表格的最后一列中实现了三个操作,分别是“详细”、“删除”和“入库”,其说明如下:点击详细可以查看到更为详细的信息,如图5-7:图5-7 人才详细信息该功能与查看信息的功能所用到原理是类似的,不同之处仅仅在于输出的格式不一样。由于一条信息的字段较多,用表格输出不太方便,因此用这种面板上的文本格式输出会更好。当应聘人员审批通过后,点击入库,即可将其信息存入人才库。如图5-8:图5-8 人才信息浏览页面“入库”的原理其实就是将Job表中的信息加一个标志,之后它便属于人才库中的记录,而不再在应聘人员信息表中显示。实现该模块的关键代码如下:private ActionForward detailjob(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)Long id=new Long(request.getParameter(id);/获得参数idJob j=dao.loadJob(id.longValue();/加载该ID对应的应聘信息request.setAttribute(job,j);/将应聘信息对象设置到request范围return mapping.findForward(success); private ActionForward updateJob(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) JobForm jobform=(JobForm)form; Job j=jobform.populate(); dao.updateJob(j); return mapping.findForward(success); “删除”功能类似于培训管理中的“删除”功能,不再赘述。5.4 培训管理为了满足公司技术需求,培训管理模块是非常重要的。该功能包括三个部分,培训计划的录入和查看,培训总结的查看。根据公司的安排,管理员必须输入培训计划的信息,其操作如图5-9:图5-9 培训计划录入页面培训计划录入模块与人员信息录入的原理是一致的,通过session获得各个字段的数据,根据Struts框架中的.xml中定义的结构,调用相应的Action将数据存入数据库中。该功能主要在EducateDao中实现,通过Serverlet控制器来实现各种操作。 信息录入之后,点击“保存”,数据库中的培训信息表(educate)中便自动存储了一条新的信息。以后,可以通过培训计划查看了解培训的信息,如图5-10所示:图5-10 培训计划查询页面同样,在该界面还可以进行查看详细信息和删除计划操作。如图5-11:图5-11 查看详细信息页面删除功能的设计思路是,点击“删除”时,系统自动获取该培训计划的ID,通过该ID在“培训信息”表中找到对应的培训计划,然后将其删除。其关键代码如下: private ActionForward detailEducate(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws HibernateException Long id=new Long(request.getParameter(id); Educate e = dao.loadEducate(id.longValue(); System.out.println(e.getName(); request.setAttribute(educate,e); return mapping.findForward(success); public void deleteEducate(Educate e) throws HibernateException Session session = HibernateSessionFactory.getSession(); Transaction tx = session.beginTransaction(); session.delete(e); mit(); HibernateSessionFactory.closeSession(); 当某个培训完成时,点击“培训完成”即可对此次培训进行总结并将记录存入总结中。如图5-12:图5-12培训总结页面 录入信息成功之后,本条记录便会被保存到数据库对应的数据表中。可以通过查看培训总结来了解各培训总结的详细情况,如图5-13:图5-13 总结详细情况页面查看培训总结的原理与查看人员详细信息类似,使用post提交查询数据,后台控制器处理并从数据库中取出数据,然后向视图层发送数据,用于显示。通过session获得值为”Educate”的对象,之后调用Action输出数据。该部分的关键代码为:public List listEducate(byte educate) throws HibernateException Session session = HibernateSessionFactory.getSession(); Transaction tx = session.beginTransaction(); Query query = session.createQuery(select e from Educate as e where cate =:educate order by createtime); query.setByte(educate,educate); List list = query.list(); mit(); HibernateSessionFactory.closeSession(); return list; 5.5 奖惩管理奖惩管理是为了统计公司员工工作情况的表现所获得的奖励与惩罚。主要包括两个部分,奖惩信息登记和奖惩信息查看。管理员根据报告录入奖惩信息,如图5-14:图5-14 奖惩信息登记页面可以通过奖惩信息查看来获取信息,如图5-15:图5-15 奖惩信息查询页面 点击详细可以查看详细的奖惩信息,如图5-16:5-16奖惩信息详情页面 奖惩管理中录入与查看的设计思想与其他模块中录入与查询的思想基本一致,故不再赘述。 实现修改功能的关键代码为: public void updateInstitution(Institution ins) throws HibernateException Institution e =this.loadInstitution(ins.getId().longValue(); if (ins.get

温馨提示

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

评论

0/150

提交评论