【基于Java Web的公司员工信息系统设计与实现13000字(论文)】_第1页
【基于Java Web的公司员工信息系统设计与实现13000字(论文)】_第2页
【基于Java Web的公司员工信息系统设计与实现13000字(论文)】_第3页
【基于Java Web的公司员工信息系统设计与实现13000字(论文)】_第4页
【基于Java Web的公司员工信息系统设计与实现13000字(论文)】_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

基于JavaWeb的公司员工信息系统设计与实现1[摘要]随着经济与互联网的快速发展,计算机等相关技术已经渗透至包括公司企业在内的社会的各个元素之中。现代企业有着较大的员工流动性,员工在工作中的分工也更细化和专业化,企业内部部门存在经常变化的情况,部门之间人事调动也更加频繁,传统的手工管理员工信息档案等的方式已不能满足企业现代化的管理要求,因此公司企业需要新的管理方法式来高效管理员工等相关信息。于是设计了这样一款员工信息系统。该信息系统使用Eclipse作为开发工具,前端页面采用JSP结合HTML技术实现,使用Java作为后端开发语言,数据库采用MySQL关系型数据库。该系统对公司员工信息等进行规范、统一的管理,实现各功能模块的增、删、改、查等功能。由此实现规范化的管理效果,从而实现工作效率的提高。[关键词]员工信息系统;Java;JSP;SSM;MySQL;人事管理目录TOC\o"1-3"\h\u1绪论 11.1课题的研究背景和意义 11.2国内外现状分析 11.3研究目标 21.4论文组织结构 21.5本章小结 32绪论开发技术概述 12.1JSP技术 32.2Java高级编程语言 32.3SSM框架技术 42.4MySQL数据库 42.5软件测试技术 42.6本章小结 53系统分析 53.1可行性分析 93.1.1技术上的可行性 93.1.2经济上的可行性 93.1.3操作上的可行性 93.2系统需求分析 53.2.1系统数据流分析 53.2.2系统功能分析 63.2.3系统用例描述 3.2系统性能分析 83.3.1实用性分析 83.3.2安全性分析 83.3.3可维护性分析 83.4本章小结 94系统设计 94.1概要设计 104.2详细设计 104.2.1系统用户登录 104.2.2添加员工信息 114.2.3删除公告信息 114.2.4文件下载4.3数据库设计 124.3.1E-R图设计 124.3.2数据库表和字段设计 144.4本章小结 155系统实现与编码 165.1管理员和员工操作 165.1.1登录界面实现 165.1.2系统主界面实现 175.1.3员工管理界面实现 185.1.4下载中心界面实现 205.2本章小结 246系统测试 246.1测试的重要性及目的 246.2系统的测试过程 256.3测试举例 256.4本章小结 26结束语 27参考文献 28绪论1.1课题研究背景与意义如今的社会是一个科学技术水平相对十分发达的社会,为更好的发展公司,公司企业一般会采用现代化的方法手段来运营公司,因此借助计算机互联网等技术开发员工信息系统很符合企业现代化发展的趋势。对于公司而言,员工等信息文件的管理并不是一件十分简单的事情,即使再为细心,由于文件等的错综复杂性,也难免会出现纰漏。员工等人事信息的管理对于公司来说是一件非常重要的事情,如果能够做好这一方面的工作,对于整个公司的运营帮助非常大,倘若不能够做好这一方面,公司很容易陷入混乱的场面。如果能够将计算机技术应用于公司企业中,开发适合各自企业的员工信息管理系统,结束传统纸质化的管理人事信息模式,于公司而言必会大大降低问题出现的可能性,节约出大量的时间和精力,进而实现公司效益的提高。1.2国内外现状分析(1)国内现状。在中国经济快速发展的当今背景下,很多国内也在不断地发展,规模在不断地扩大。这使得公司对于员工信息管理这一方面的需求亦在不断地增加,这使得员工信息系统的开发变为一个更为复杂庞大的工程。开发工具与技术方面,出现了以Java为主的后端开发语言结合SSH框架的开发组合,很好的实现了整个员工信息系统的开发和功能的实现。而后而后出现的新的框架组合SSM相对于之前的技术框架组合等更为便捷,使用起来也更为智能。而现在的事实情况是仍然有很多的公司企业采用过去传统的方式来管理员工等信息,此种方式很容易在管理过程中出现纰漏,严重时还有可能会到来很大的经济损失。现阶段,为跟随世界模范公司企业发展的趋势,无论是企业内部开发,还是借助专业技术公司,国内很多的企业都开始在设计属于自己的员工信息系统,更有众多公司已经将自己的系统正式地投入到实际使用当中。参照国外发达国家在此方面的经验,预计不久,中国大中小型企业对于员工信息系统的使用将全面普及。(2)国外现状。目前,人事等信息管理系统的开发与应用受国外大多数发达国家的重视,公司企业均有符合自企实况的人事管理方法,而这些管理的方法模式基本都依赖于计算机网络信息生态圈。于这样的环境条件下,公司企业的员工等信息系统也在逐渐发展起来,利用计算机互联网等技术打开渠道,及时地帮助公司的每一位职员解决问题,同时也为他们提供了一个非常好的交流平台[1]。有关公司企业人事等管理系统的开发,还有个许多方面的问题需要仔细、深入地探讨和研究,以宏观的角度来看,这是一个涵盖于很多方面的长期的战略性问题。如今,在很多的跨国企业当中,员工信息系统已不单单是一个由人事部人员来操作的单一封闭性系统,而是一个面向社会全体相对更为开放的系统。例如微软的HeadTrax人事管理系统,此系统可实现诸如员工信息修改、人员调动、社会招聘等功能。不仅仅微软,拥有优秀的人事管理系统的国外知名企业还有Oracle、SAP等。1.3研究目标 开发此基于JavaWeb公司员工信息系统的目的在于帮助公司企业改变人事管来的方式,使管理的方式融入最新的科学技术,使得管理变得更加智能化和人性化,从而摆脱传统的人工纸质化的管理方式,尽可能避免管里过程中可能出现的错误,使得公司的效益尽可能的最大化。这是员工信息系统开发的主要目标。系统为公司内部的员工信息系统。部门、职位和员工管理是员工信息系统的三大功能模块,除此之外还附有公告和文件上下载两个模块。公司内部有管理员和普通员工两种角色。管理员角色:查看和添加部门信息、查询职位信息和新增新的职位信息、查询员工列表和添加新的员工(可根据员工的姓名进行模糊查询)、可查看公告和添加新的公告、可上传和下载文件。普通职工:相对于管理员的操作的范围减少了对各个模块进行的增删改操作,仅能对各个模块的信息进行查询操作和文件下载操作。1.4论文组织结构研究内容及目标、所用工具技术、需求分析、系统具体设计、实现及测试是该员工信息系统论文的六个大章节,本小节的主要目的就是对此六章进行简单的描述,如下。第一章:本章的前面部分主要介绍了人事管理的的研究背景及意义。国内外的研究现状是此章的中间的介绍部分,最后部分介绍了员工信息系统的主要研究目标。第二章:基于JavaWeb员工信息系统系统开发过程中所需要的关键技术是本章的主要介绍对象。包括JAVA、JSP、SSM框架技术和MySQL数据库等,这些技术和工具为员工信息系统的开发实现提供了基础保障。第三章:本章的介绍内容围绕系统分析这一主题展开,主要进行了可行性分析、系统需求分析、和系统性能分析,除此之外本章还包含数据流图和其他各种描述图与描述表。第四章:系统设计是本章的描述主题,第一部分进行概要设计描述,大致叙述设计的结构;中间部分对设计展开详细介绍;最后展示E-R模型图和库表等。第五章:此章主要展示了公司员工信息系统界面实际样图以及部分主要功能模块的代码实现。第六章:前面部分分析了对员工信息系统进行测试的重要性,后面部分描述了系统测试的流程。1.5本章小结本章的前面部分主要对公司员工信息系统的研究背景及其意义进行阐述,接着对其在国内外的发展情况进行大致描述。中间部分对系统的研究目标和开发目的进行有依据的说明,在最后部分描述了整个论文的大致组成结构,介绍各个章节的大体内容。2开发技术概述2.1JSP技术JSP是技术的简称名,其中的J代表Java,S表示Server,P表示Page。其建立基于Java系统与JavaServlet动态技术,于1999年由Sun公司推出。借助于JSP的便捷性,开发人员可以通过JSP独有的标签来使用他人已编写好的部件来完成自己动态网页的编写,完全可以不用自己亲自编写脚本程序[2]。现如今JSP已成为最受欢迎的线上编程语言之一,也在国内得到了十分广泛的重视并被应用在CRM、OA等系统软件中[3]。2.2JAVA高级编程语言不同于面向过程的C++,Java是一门面向对象、被应用十分广泛的高级编程语言。Java可以被应用于多种程序的编程,如Web应用、桌面应用、分布式系统等[4]。Java语言极好地实现和诠释了面向对象理论,借此开发人员可以以较为轻松的方式进行复杂而优雅的编程。Java语言可以被作为众多静态面向对象编程语言中最具有代表性的一个[5]。2.3SSM框架技术SSM是三种框架的组合,它们分别为:Spring、SpringMVC和MybatisSpringSpring可以被形象为一个装配Bean的大工厂,亦可以将之看为项目中的粘合剂,对整体项目起着非常重要的作用[6]。IOC(控制反转)和AOP(面向切面编程)是Spring的核心内容。使用Spring即不再需要开发人员去使用“new”关键字来实例化一个对象,这一切可交有Spring框架来帮你自动完成。SpringMVCSpringMVC的核心Servlet即DispatcherServlet。它的功能用处可被形容为大江里的船只,它可以将货物(用户发出的请求)通过HandlerMapping送到指定的码头(Controller)。此处码头就是MVC中的Controller,然后由Controller来执行相应的业务过程[7]。SpringMVC的作用相当于SSH(Spring+Stuts+Hibernate)框架中的struts[8]。MybatisMybatis对JDBC进行了封装,它透明了数据库的底层操作。Mybatis对数据库的操作是由一个叫做sqlSession的示例实现的,它的作用可以被形容为桥梁,桥的两端是操作员和数据库。sqlSession是通过qlSessionFactory类的一个示例进行产出。每当需要对数据进行操作时,就可以通过qlSessionFactory来实例化一个sqlSession对象,然后sqlSession携带着从对应Mapper中获得的Sql指令对数据库进行操作[9]。2.4MySQLMySQL属于传统的关系型数据库产品,其开放式的架构使得用户的选择性很强,而且随着技术的逐渐成熟,MySQL支持的功能也越来越多,性能也在不断地提高,对平台的支持也在增多,此外,社区的开发与维护人数也很多。当下,MySQL因为其功能稳定、性能卓越,且在遵守GPL协议的前提下,可以免费使用与修改,因此深受用户喜爱。关系型数据库的特点是将数据保存在不同的表中,再将这些表放入不同的数据库中,而不是将所有的数据统一放在一个大仓库里,这样的设计加快了MySQL的读取速度,而且它的灵活性和可管理性也得到了很大的提高。访问及管理MySQL数据库的最常用标准化语言为SQL——结构化查询语言。SQL使得对数据库进行存储、更新和存取信息的操作变得更加容易。MySQL数据库是一款功能十分强大的关系数据库,且免费开源。可跨平台运行的特性是MysSQL的一个很大优点。MySQL不但能在Windows系统上完美运行,亦可以在其他操作系统上稳定的运行,MySQL拥有独立于平台的性质,这使它在Web应用程序中拥有着很多优势[10]。使用方便且功能十分强大。MySQL有着客户端/服务器的架构,具有服务器保护和许多客户端程序与库。它可以实现对大量数据进行高效、安全和快速地处理。相比于其他一些数据库,MySQL数据库的使用就显得十分简单便捷。MySQL的最大优点就是简单、健壮、快速,方便使用者使用。2.5软件测试技术软件测试的目的是将软件中可能存在的错误即时找出,并对威胁进行有效性排除和对漏洞的检测。软件测试共分为四个阶段。(1)单元测试。单元测试主要是在软件设计的最小单元模块中进行测试,发现模块内部的问题并改正。另外,确认模块的实际功能与其功能描述兼容。(2)集成测试。集成测试是根据设计要求和测试来组装模块。主要目的是找到与接口相关的问题。如果一个模块和另一个模块有可能产生负面影响,即使子功能组合在一起,也可能无法获得预期的主要功能,并且每个看似可接受的小错误累积到不可接受的水平也是很可能的。(3)系统测试。系统测试包括很多模块,如强度测试、安全测试、恢复测试、性能测试等。系统测试在软件开发完成后与应用测试的其他部分一起进行。(4)验证测试。验证测试的目的是向未来的用户表明应用程序可以按预期工作。集成测试后,所有模块根据设计组装成一个完整的软件应用程序,这基本上消除了界面错误,软件的有效性也有了进一步验证。2.6本章小结本章节主要介绍了该系统的开发和测试所涉及的关键技术与开发环境,以及需要的开发工具和关键的开发框架,在开发之前对所用到的知识进行评估,阐明各个技术的优点。保证在开发过程中不会出现因开发语言和开发环境有缺陷而造成不可解决的困境。3系统分析对于一个系统的开发,系统分析做为前提条件总是必不可少的。如果把软件开发比作盖房子,那么做好需求分析就相当于建筑工程师要明白自己要设计一个什么样的建筑,建筑要用来做些什么,只有明白这些条目,建筑师才能设计出一栋漂亮而又实用的建筑。软件开发亦是如此,在开发前工程师需要清楚系统要实现那些功能,进而开发出实用性强的软件系统。本章就是对该课题的需求进行分析。3.1可行性分析3.1.1技术上的可行性现阶段,面对一个对人事管理系统进行开发的任务,相对来说比较容易的。无论是软件开发工具,还是技术方面的采用,对于软件开发工程师来说可选择的范围相对来而言是非常广的。例如开发工具,有Eclipse和Idea等优秀的软件开发协助软件,数据库有Oracle和MySQL等,框架组合可选择SSM或者SSH等等。本系统采用Java作为开发语言,数据库采用MySQL,结合SSM框架技术,以Eclipse软件作为开发工具进行开发。经过这么多年的使用和不断的升级改进,这些技术现在已经非常的成熟,而且对开发环境硬件的要求也不高,因此该系统开发在可行性分析上是完全没有问题的。3.1.2经济上的可行性以客观的角度来看,一个企业的规模在发展的道路上是在不断扩大的,随之而来的职员数目也在不断增加,为更好地管理职员等相关信息,最好的办法就是采用科学现代的管理方式,而为公司开发一套适合本企业的员工信息管理系统就是一很好的方法。如果开发完成的系统能够得到公司人员认真、规范化的操作,所带来的效益是绝对可观的,所节省出的开支绝对会远远大于前期系统开发所消耗的费用,由此来看,该系统开发在经济上的可行性分析上是完全没有问题的。3.1.3操作上的可行性对于员工系统的开发,在开发前设计阶段开发人员就必须清楚系统所面对的用户对象。对于一个公司来说,企业内部不可能所有人员都懂计算机等专业知识,所以系统所面向的使用用户应被定义为非计算机专业人员。本系统采用MVC设计模式和B/S架构,用户只需要通过前端页面简单操作,后端数据就可根据用户的操作进行调动和回显。因此,本系统的操作是十分简单的,任何人都可以轻易上手使用。3.2系统需求分析3.2.1数据流图分析数据流图是系统需求中非常重要的一部分,数据流图从数据的角度来描述一个系统,可以帮助我们更为全面的理解系统运行的大致过程和数据走向。为本系统绘制的数据流图如下3-1所示。图3-1系统数据流图3.2.2系统功能分析(1)管理员用户用例分析系统管理员用户是本系统的主要运营人员,他们需要根据实时情况发布公告信息,对员工的信息进行管理,根据公司内部部门人事等的调整及时在系统中进行更新等。比如:管理员在公告管理模块发布有关五一假期的具体时间安排。管理员主要的执行操作有:部门管理模块:身份得到验证,登录成功后可对部门信息进行调整,展开增加、删除和修改操作。职位管理模块:对职位信息进行调整,进行增加、删除和修改操作。员工管理模块:对员工信息进行管理,可对目标员工进行信息增加、信息删除以及信息修改操作。公告管理模块:根据实际的公司安排或要求发布公告信息。下载中心模块:根据实际需求情况完成文件的上传和或者删除文件等。管理员可执行操作用例图模型图3-2所示。图3-2管理员操作用例模型图(2)普通用户用例分析在此员工信息系统中,普通用户可以对公司部门、职位、员工信息进行查看,也可以查看新公告和进行文件下载等。普通用户操作用例图,如图3-3示。图3-3普通用户操作用例图普通用户主要的执行操作主要包括以下几个方面。部门管理模块:查看公司的部门信息。职位管理模块:查看公司设定各个职位信息。员工管理模块:可查看公司内部所有人员的信息。公告管理模块:查看最新以及之前的公告信息。下载中心模块:根据需要进行文件下载。3.2.3系统用例描述(1)用例描述-添加新员工员工管理是员工信息系统非常重要的一个功能模块,此模块功能能够完美实现的系统才能被作为一个合格的员工信息系统。此小节对该模块的添加新员工这一过程进行用例描述。如表3-1所示。表3-1添加新员工用例描述用例名称添加新员工执行角色管理员简要说明管理员在员工管理功能模块添加新的员工信息前置条件已经在系统中成功注册的管理员用户才能进行操作基本事件流①管理员成功登陆后点击“员工管理”进入员工管理模块②点击“添加员工”按钮,进入员工信息添加界面③管理员对员工信息进行录入。带“*”项为必填项④管理员完成填写,点击“提交”,系统提示“增加成功”。如有必填项未填,系统将提示“必填项不能为空”,返回添加界面重新填写。⑤添加成功后点击“员工列表”可查看新添加的员工信息。(2)用例描述-发布公告为了进一步完善员工信息系统的功能,为系统加入了公告管理功能模块,管理员可以在此模块发布新公告。下面对发布新公告这一过程进行用例描述。如表3-2所示。表3-2发布公告用例描述用例名称发布公告执行角色管理员简要说明管理员在公告管理功能模块发布新公告前置条件已经在系统中成功注册的管理员用户才能进行操作基本事件流①管理员成功登陆后点击“公告管理”进入公告管理功能模块②管理员点击“添加公告”进入公告添加界面③管理员对公告信息进行录入④管理员完成填写,点击“提交”,系统提示“增加成功”。如有必填项未填,系统将提示“必须填项不能为空”,返回添加界面重新填写⑤添加成功后点击“公告查询”可查看新添加的公告(3)用例描述-下载文件在该系统的下载中心模块,公司员工可根据需要下载一些文件。下面对文件下载这一场景进行用例描述。如表3-3所示。表3-3下载文件用例描述用例名称下载文件执行角色用户简要说明管理员在公告管理功能模块发布新公告前置条件已经在系统中成功注册的用户才能进行操作基本事件流①用户点击“下载中心”进入下载中心功能模块②用户点击“文件查询”进入文件列表界面③用户通过模糊查询或者滚动鼠标找到目标文件④点击操作框中的“下载”按钮完成文件下载3.3系统性能分析3.3.1实用性分析本系统开发的服务对象中小型公司企业,因此系统的开发的主要目的帮助中小型公司企业解决有限的问题。3.3.2安全性分析数据安全总是放在第一位的,就是要保证数据的完善性、完整性和一致性,这是数据安全的基本要求。那么要保证数据的安全性,就要从以下三大方面入手:(1)防丢失。数据可能因为突然断电而没有来得及保存或者就是纯粹的忘记保存,而该系统总是能将数据同步到本地计算机,以防丢失。(2)防盗窃。目前倒卖数据的风气盛行,总是有些人将盗来的数据用到不正当的事情中,为了防止盗窃数据,数据库的文件命名不会直接表示出其真实意义,不容易被人猜到。(3)防被篡改。有时会面临着无意被人看到用户名和密码,因此很有可能被他人登录到系统中,而对系统内的信息恶意篡改。所以管理人员的用户名和密码要尽量保密,密码也要经常修改和设置复杂一些。3.3.3可维护性分析本系统对不同种类的业务管理和流程的方法相适应,且界面友好,使用起来比较简单,易于操作,后台维护比较方便。另外,该系统是基于B/S架构的,所以维护并不需要过高的技术水平,即使不是计算机方面的专业人士,也可在较短时间内掌握基本的维护技术。3.4本章小结本章节对该系统的需求方面进行分析,明确了该系统的可开发性、可应用性。另外,在对该系统的需求分析的过程中,得出了一些关于功能模块的逻辑要点。通过用例描述对功能模块进行透明化,使本章节的目标更加的明确。4系统设计不论对于论文还是系统本身,系统设计部分是均是极其重要的部分。该部分需要对整个系统的大体结构,执行流程,及数据库表设计等进行明确的描述。4.1概要设计管理员和普通用户是此基于JavaWeb的公司员工信息系统中的两个主要相关角色,其中管理员又包括超级管理员和普通管理员。管理员可以管理员工,对员工等信息进行调整。超级管理员相对管理员多出用户管理(管理管理员用户)的模块。普通用户可查看部门、员工和公告等信息。以下是相关功能的简要描述。对部门、职位和员工信息进行规范化管理,对公告和文件进行规范化管理是该系统管理员主要的负责范围和权限。普通用户相对员管理减少了管理操作,可查看各模块信息和下载文件。本系统框架结构图舍去了登录和注销模块,如图4-1所示。图4-1系统结构图系统E-R图设计在本章数据库设计部分进行详细说明。 4.2详细设计该部分主要介绍员工信息系统在运行过程中的后端数据的走向,使其透明化。另外对系统的主要功能模块进行剖析,展示其具体流程,并绘制出相应的流程图4.2.1系统用户登录用登录是使用本系统的第一步。用户进入系统登录界面以后,输入登录名和密码,输入完成后选择自己的用户角色,管理员或者用户,然后点击登录。点击登录以后,系统首先会对必填项进行检测,如果登录名或者登录密码未填,系统将提示“必填项目不能为空”。如果登录名和密码均填写但有一项错误,或者登录名和密码均正确,但角色选择错误,系统均提示“登录名或密码错误,请重新输入”。所有登录信息均填写无误,系统将会根据角色的不同跳转至不同的系统主题界面。用户登录的具体流程如图4-2所示。图4-2系统登录实现流程图4.2.2添加员工信息员工信息添加是只有管理员才能进行的操作。管理员登录成功之后点击“员工管理”进入员工管理的功能模块,然后点击添加员工,进入员工员工信息填写的界面,信息填写完成以后点击“提交”。提交之后系统首先会对必填项进行检测如果有必填项目没有填写,系统将提示“必填项目不能为空”。如均已填写,则提示“增加成功”。员工信息的添加流程图如图4-3所示。图4-3添加员工信息流程图4.2.3删除公告信息公告信息的删除是只有管理员才能进行的操作。管理员登录成功之后点击“公告管理”进入公告管理的功能模块,然后点击公告查询进入公告列表界面。找到目标公告所在行,点击操作框的“删除”图标按钮,系统将提示“是否确认删除?”,点击确认,系统提示“已删除”,完成删除操作。公告信息删除流程图如4-4所示。图4-4删除公告信息流程图4.2.4文件下载用户点击“文件下载“”进入文件下载功能模块,点击“文件查询”进入文件列表界面,找到目标文件所在行,点击操作框中的“下载”图标按钮即可完成下载。文件下载流程图如图4-5所示。图4-5文件下载流程图4.3数据库设计一个好的且能够被广泛投入使用的系统软件,其背后一定有着一个十分得体、合理的数据库设计。如果想要使系统软件使用的时间更长,后续可需求的变化而做出相应的调整,那么在系统正式开发的之前就应尽可能了解委托方现在以及未来可能会有的需求,而设计出更为细节的数据库设计。4.3.1E-R图设计为更好的的描述数据库表以及各表之间的联系,为此画E-R图是一个很好的方式。系统全局E-R图如图4-6所示。图4-6全局E-R图(1)管理员用户表设计和普通用户表(亦是员工信息表)设计本系统的登录用户分为有管理员用户和普通用户两种,管理员用户表字段包括管理员ID、登录名、登录密码、创建日期和用户名,E-R模型如下4-7所示。图4-7管理员用户信息表E-R模型普通用户表(亦是员工信息表)字段包括用户ID、部门ID、职位ID、姓名、性别、电话、邮件、学历、身份证号、地址、密码和创 建日期。E-R模型如下4-8所示。图4-8普通用户信息表E-R模型(2)公告信息表设计和下载中心信息表设计为员工信息系统公告管理模块设计的公告信心表字段包括公告ID、标题、内容、创建日期和发布者。其E-R模型如下图4-9所示。图4-9公告信息表E-R模型下载中心信息表包括文件ID、标题、文件名、创建日期和上传者字段。E-R模型如下4-10所示。图4-10下载中心信息表E-R模型4.3.2数据库表和字段设计根据用户和管理员所有的具体功能模块分析和对数据库中实体关系的设计,可以看出系统中所用到的基本信息,主要是存储系统中所有的数据。下面对各个实体以表格的形式进一步清晰具体地说明。(1)管理员用户信息表。该表用于存储管理员用户的基本信息,表所含的信息字段有:管理员ID、登录名、登录密码、注册日期和用户名。具体表设计与说明如表4-1所示。表4-1管理员用户信息表字段数据类型中文字段(说明)可否为空idint管理员用户ID否loginnamevarchar(20)登录名否passwordvarchar(20)登录密码否create_datevarchar(20)注册日期否usernamevarchar(20)用户名否(2)员工信息表。该表用于存储员工的基本信息,表所包含的信息字段有:员工ID、部门ID、职位ID、姓名、性别、电话、邮件、学历、身份证号码、联系地址、建档日期和登录密码。具体设计与说明如表4-2所示。表4-2员工信息表字段数据类型中文字段(说明)可否为空idint员工ID否dept_idvarchar(11)部门ID否job_idint职位ID否namevarchar(20)姓名否sexint性别否phonevarchar(11)电话否emailvarchar(50)邮件否educationvarchar(10)学历否card_idvarchar(20)身份否addressvarchar(50)联系地址否create_datevarchar(20)建档日期否passwordvarchar(20)登录密码否(3)部门信息表。该表用于存储部门信息,表所包含的信息字段有:部门ID、部门名称和部门信息。具体表设计与说明如表4-3所示。表4-3部门信息表字段数据类型中文字段可否为空idint部门ID否namevarchar(50)部门名称否remarkvarchar(300)详细信息否(4)职位信息表。该表用于存储公司的职位信息,表所包含的信息字段有职位ID,职位名称和详细信息。具体表设计与说明如表4-4所示。表4-4职位信息表字段数据类型中文字段(说明)可否为空idint职位ID否namevarchar(50)职位名称否remarkvarchar(300)详细信息否(5)公告信息表。该表用于存储部门信息,表所包含的信息字段有:公告ID、标题、内容、发布日期和发布人。具体表设计与说明如表4-5所示。表4-5公告信息表英文字段数据类型中文字段名(说明)可否为空idint公告ID无titlevarchar(50)标题否·contenttext内容否create_datevarchar(20)发布日期否upnamevarchar(50)发布人否(6)文件信息表。该表用于存储下载中心模块的文件信息,表所包含的信息字段有:文件ID、标题、文件名、文件描述、上传日期和上传用户。具体表设计与说明如表4-6所示。表4-6下载中心信息表英文字段数据类型中文字段名(说明)可否为空idint文件ID否titlevarchar(50)标题否filenamevarchar(300)文件名否remarkvarchar(300)文件描述否create_datevarchar(20)上传日期否upnamevarchar(64)上传用户否4.4本章小结本章阐述了该系统的框架结构、系统流程和数据结构,并着重分析E-R图。其目的是获得该系统的最终实体模型。系统设计的总体目标有很多,本章确认了最适合该系统功能需求和性能需求的系统结构、数据库结构和实现算法。5系统实现与编码5.1管理员和员工操作客户端应用程序实现时要注意安全系数一定要高,其次就是要做好承接转换功能。另外,对于用户的身份能够快速鉴别,同时加强对系统资料的保管,严防资料不被遗失。5.1.1登录界面实现为了保证系统的安全,在管理模块设立了必经登录这一项。具体操作时,在连接数据库进行身份验证时密码必须正确。同时,系统阻止外来的干扰和破坏。管理员和员工分别按要求输入账号和密码,通过检测,即可成功登录。如图5-1所示。图5-1管理员/员工登录管理员登录代码:@RequestMapping(value="/login") publicModelAndViewlogin(@RequestParam("loginname")Stringloginname,@RequestParam("password")Stringpassword,@RequestParam("tip")Stringtip,HttpSessionsession,ModelAndViewmv){ //调用业务逻辑组件判断用户是否可以登录 booleanflag=false; if("1".equals(tip)){//传入参数 Useruser=rainservice.login(loginname,password); if(user!=null){ //将用户保存到HttpSession当中 System.out.println("HttpSession");//System.out.println("HttpSessio输出================"); session.setAttribute(Constants.USER_SESSION,user); session.setAttribute("tip","1"); if(loginname.equals("admin")){ //客户端跳转到main页面 mv.setViewName("redirect:/index"); }else{ mv.setViewName("redirect:/index2"); } }else{ //设置登录失败提示信息 System.out.println("设置登录失败提示信息"); mv.addObject("message","登录名或密码错误!请重新输入"); //服务器内部跳转到登录页面 mv.setViewName("forward:/loginForm"); } }else{//识别普通用户 Employeeuser=rainservice.login2(loginname,password); if(user!=null){ //将用户保存到HttpSession当中 System.out.println("HttpSession");//添加属性 session.setAttribute(Constants.USER_SESSION,user); session.setAttribute("tip","2"); //客户端跳转到main页面 mv.setViewName("redirect:/indexcustomer/"); }else{ //设置登录失败提示信息 System.out.println("设置登录失败提示信息"); mv.addObject("message","登录名或密码错误!请重新输入"); //服务器内部跳转到登录页面 mv.setViewName("forward:/loginForm"); } } returnmv; }5.1.2系统主界面实现管理员和员工成功登录后,会分别进入到不同的两种主界面。管理员主界面左侧有导航菜单,共分为五大功能(超级管理员有六种),可以在里面选择进行具体的操作。员工主界面共有五大功能。管理员主界面和普通用户主界面如图5-2、5-3所示。图5-2管理员主界面图5-3普通用户主界面5.1.3员工管理界面实现员工人事信息管理,主要是实现企业对员工的基本信息进行添加、查询、修改和删除操作。管理员为员工设置初始账号,密码等信息。图5-4员工列表图5-5添加员工信息员工列表查询代码:@RequestMapping(value="/employee/list",method=RequestMethod.GET) publicStringindex(Modelmodel,Stringcontent){ System.out.println("没有经过formName"+content); List<Employee>job_list=rainservice.get_EmployeeList();System.out.println("查看job_list:"+job_list); if(content!=null){ //按条件查询 job_list=rainservice.get_EmployeeLikeList(content); } model.addAttribute("list",job_list);//找到列表的JSP页面 return"employee/list"; }添加员工信息代码:@RequestMapping(value="/employee/add",method=RequestMethod.POST) publicModelAndViewadd(ModelAndViewmv,@ModelAttributeEmployeejob,Integerid){//System.out.println(id); if(id!=null){//如果id不为空,更新数据 rainservice.update_EmployeeInfo(job); }else{ System.out.println("新员工添加成功,明天继续舔你我的宝!"); //插入数据rainservice.insert_EmployeeInfo(job); }//重定向 mv.setViewName("redirect:/employee/list"); returnmv; }5.1.4下载中心界面实现 管理员进入主界面以后,点击下载中心模块,可查看下载文件列表,同时可根据需要对文件进行上传、下载、修改和删除操作。下载中心主界面如下图所示5-6所示。图5-6下载中心界面下载功能实现代码:@RequestMapping("/document/down")publicvoiddownFile(HttpServletResponseresponse,Stringfilename){ System.out.println(filename); //通过文件标题名字获得其文件名 Stringflie="C:/Test/MyTest/"+filename; try{ FileInputStreamips=newFileInputStream(flie); //PrintWriterwriter=response.getWriter(); response.setContentType("application/x-msdownload"); response.setHeader("Content-Disposition","attachment;filename="+filename); ServletOutputStreamops=response.getOutputStream(); IOUtils.copy(ips,ops); IOUtils.closeQuietly(ips); IOUtils.closeQuietly(ops); }catch(Exceptione){ e.printStackTrace(); }}5.2本章小结管理员相关的功能界面包括:登录、用户管理、员工管理、部门信息管理、职位管理、公告管理和下载中心等,可实现对个模块的增删改等。员工相关的功能界面包括:登录、部门和职位信息的查看、以及公告的查看和文件的下载。但不可对各个模块进行信息增删改等操作。6系统测试软件系统在设计开发的过程中经常会出现一些未料及的错误。有一些错误在进行开发运行是就可被发现,因为当程序运行出错时,开发工具软件会自动提示出现的错误,开发人员便可以通过提示进行程序的更正和修复。但实际情况是,除此种错误情况外还存在一种另外一种不会被开发工具自动提示的错误。这错误可能是算法错误,也可能是逻辑错误,是一种需要人工检验才能发现的错误。6.1测试的重要性及目的系统测试是系统在开发完成以后,在向委托方正式交付之前进行的一项非常重要的流程,以此来发现系统中可能存在的缺陷[14]。如果忽略了系统测试这一环节,那么系统漏洞在后期极有可能会带来严重的后果,无论对于委托发方还是受委托方,对彼此造成的损失都将会远远大于进行系统测试所消耗的人力费用[15]。6.2系统的测试过程(1)将要的测试的内容分为若干个部分,列出详细细节信息(2)对测试的内容步骤进行详细的记录,保证步骤无漏缺。(3)比较预计结果和实际测试结果,以此来判断功能的实现是否符合预期。(4)针对不符合预期的测试部分,制作缺陷表,等待开发人员修复。6.3测试举例(1)用户登录作为本系统最为基础的一个功能,必须保证其实现的稳定性和可靠性。针对用户登录,具体的测试流程如表6-1所示。表6-1用户登录测试用例功能模块名称用户登录功能特性用户的身份进行验证预置条件数据路中存在管理员用户admin,其密码为123456。测试目的验证输入信息是否合法,用户身份验证。测试流程序号操作预计结果实际结果1登录名和密码输入为空,选择管理员用户,点击“登录”根据情况提示“必须填项不能为空”提示“必须填项不能为空”2输入登录名“admin”和密码“5555”,选择管理员用户,点击登录。提示“登录名或密码错误!请重新输入”提示“登录名或密码错误!请重新输入”3正确输入登录名“admin”和密码“123456”,选择管理员用户,点击登录。登录成功登录成功4正确输入登录名“admin”和密码“123456”,选择用户,点击登录。提示“登录名或密码错误!请重新输入”提示“登录名或密码错误!请重新输入”(2)下载中心模块测试用例,表中的含有两条文件信息。具体过程测试如表6-2所示。表6-2员工薪酬信息管理模块测试用例功能模块名称下载中心功能特性下载中心功能操作核验预置条件数据库中已经含有了两条文件信息,用户通过浏览器登入信息系统,并尝试文件下载等。测试目的验证下载中心

温馨提示

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

评论

0/150

提交评论