版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
页共29页引言随着电脑型号与功能的不断创新,电脑从近代的电子计算机,发展到如今的超大规模集成电路计算机,人类用了不到一百年的时间实现了这一飞跃。根据国家统计局的数据显示,电脑的销量从在2012-2018年之间,计算机平均每年产量36000万台,变成从2018年到2022年,笔记本电脑在如今的市场上已经达到了上百亿的销售额,可见计算机越来越普及,尤其是笔记本电脑,越来越受年轻人青睐。再加上网络技术的发展,从2G到5G,我们实现了通讯技术上的飞跃,早在以前网络问题可能会成为我们购买计算机的一个阻碍,但如今,网络发展如此迅速,加上计算机硬件的发展,使得电脑越来越个人化。现在甚至我们工作都不需要去公司上班,只需要远程办公,对于一些管理的工作,我们只需要打开浏览器,输入网址,登录自己的帐号就可以对各种信息管理,可以在任何时间任何地点进行。可行性分析与技术操作系统可行性员工信息管理系统页面整洁直观,操作简单,只要通过点击相应按钮就可进行相关操作;功能模块及权限控制都较明确,普通用户可查看工作内容,管理员对各数据进行相应的增删改查等。所以员工信息管理系统在操作可行性上是可行的。技术可行性本系统运用的是SpringBoot框架,对Mysql数据库、Mybatis框架和SpringMVC设计思想进行整合,让代码可以重复利用,使JDBC的操作不再那么麻烦,让系统资源的浪费大大减少,更让系统的结构变得直观,有利于后期的扩展和维护。以上技早些年就已成熟,且应用广泛,而作为编程人员,在学期间已学过有关java开发的课程,而开发该系统所需要的资源在网上都有提供,所以在技术方面来说,员工信息管理系统是可行的。技术介绍Spring框架Spring是一个对于实例在运行环境运行中不会占用太多的资源,而且无需付费就可直接查看底层代码的应用开发框架,它为Java辅助的软件提供了广泛的基础设施支持,使其可以在任何一个系统中发布,而且该系统所需的处理开销也是忽略不计的,Spring还为系统提供一个整体的解决方案,开发人员可以用它来整合应用程序与第三方框架,除了它自己提供的功能外。Spring框架是一个多层次的架构,由七个模板组成,各个模板都能用在任何J2EE服务器中,也能独立应用程序,重用于测试环境。IOC(核心容器):它提供了Spring框架的基本功能,将对象的创建、存储、管理交给Bean容器。(BeanFactory是核心组件,实现的是工厂模式);DI依赖注入:动态的将某种依赖关系的目标对象实例注入到应用系统的各个组件之中;SpringAOP:SpringAOP模块将面向切面编程整合到了Spring框架中,也为基于Spring的应用程序中的对象提供了事物管理服务,通过使用SpringAOP,不用依赖EJB组件就可以将声明式事物管理整合到应用程序中;ORM模块:Spring框架与许多ORM框架集成,为ORM提供许多对象关系工具。WEB模块:提供了基本的基于网络的集成功能,例如:使用Servlet监听器和基于网络的应用程序上下文加载多个文件并初始化loC容器。DAO模块:提供了一个异常层次结构,以处理不同数据库抛出的异常和错误信息;SpringMVC:SpringMVC框架是一个全功能的构建WEB应用程序的MVC实现。Mysql数据库在关系数据库中,数据不是放在一起,而是被存储在不同的表中,Mysql就是一个关系型数据库。Mysql开源且免费,虽有缺点,但还是大受欢迎。Mysql支持大型数据库,采用标准的SQL数据语言形式,可运行在多个系统上,支持多种计算机语言,一般的中小型网站的开发都会使用Mysql。Mybatis框架Mybatis是一个持久层框架,也是一个半对象关系映射(ORM)框架,底层基于JDBC与数据库的交互,对JDBC的操作进行封装和优化,所以开发者只需要关心SQL语句,其余都由Mybatis处理。Mybatis可以使用注解或xml来配置和映射本地信息、映射接口和pojo到数据库中的记录,不用繁琐的手动书写JDBC代码和设置参数,让系统自动获取结果集。Mybatis基于SQL语句编程,不会对应用程序或数据库产生任何影响,SQL语句写在xml文件里可以动态编写SQL语句,还可重复使用,不会对代码产生依赖,还能减少大量重复的代码。SpringMVCSpringmvc是一个用java实现轻量级网络框架的mvc设计模式,封装了Servlet技术的应用,简化了开发者对请求和响应过程中数据的处理。在MVC设计模式中,任何软件可以分为三部分:控制程序流转的控制层(Controller)、封装数据处理数据的模型(Model)、展示数据的视图(View),这三部分相互独立,互不干扰。Springmvc主要组件有:前端控制器DispatcherServlet,可以接收请求、响应结果;处理器映射器HandlerMapping:根据请求的url查找Handler;处理器适配器HandlerAdapter;处理器Handler;视图解析器ViewResolver:进行视图解析,更具视图逻辑名解析成视图;视图View。需求分析用例分析管理员员工信息管理系统主要对象是系统管理员,其业务是进行员工数据管理。管理员可以修改自身登录密码,可以对各部门人员进行分配,添加岗位与撤销岗位;可以对员工信息进行查找,删除与修改;还能对在角色模块中进行功能分配等操作。管理员用例图如图3-1所示:图STYLEREF1\s3-SEQ图\*ARABIC\s11管理员用例图程序员该系统中还包含程序员这一对象,其在系统上可以进行菜单功能的管理,对其进行优化升级、维护与检测删除等操作;也可以修改自身登录密码;可以进行日志管理,方便查看或删除日志以进行该系统的维护,如图3-2所示:图STYLEREF1\s3-SEQ图\*ARABIC\s12程序员用例图系统用户权限系统用户只有三种:系统管理员:对员工信息进行管理并发布任务;程序员:对该系统的功能进行管理。概要设计总体设计员工信息管理系统主要角色为管理员,其总体分为两个模块,分别是系统模块与通知模块,其中系统模块里有日志管理、用户管理、菜单管理、角色管理、部门管理,通知模块里有通知管理。进入系统前会由登录操作判断登录用户是什么角色来显示相应功能。系统总体设计如图4-1所示:图STYLEREF1\s4-SEQ图\*ARABIC\s11系统总体设计图系统功能模块设计用户管理:此功能主要实现对用户信息的查询,包括用户查询,保存,更新,禁用启用等操作让系统管理员可以方便对员工信息进行管理。日志管理:此功能主要实现对用户行为日志(如用户的在某个时间执行了某个操作,用了多少时间等)进行查找、删除等操作,由系统自身来保存日志。部门管理:可以查看该系统所含有的部门,对其可以进行修改,方便进行员工的分配。菜单管理:此功能让程序员得以知道该系统的所有功能以便维护与升级。角色管理:本模块主要实现系统内部岗位的管理,管理员在创建某一角色时,要为其分配一个或多个功能操作权限,之后再由管理员对用户角色进行配置。修改密码:系统管理员和程序员都可修改密码,此功能可以更加方便用户进行修改,以防日后账号丢失。详细设计数据库的设计数据库概念模型数据库是非常重要的,因为系统调用和数据更新都需要数据库支持,所以数据库的设计必须完整,这样项目才能展现出开发者想要的功能。数据库的概念结构设计用到E-R模型设计方法,实体联系模式,也可称为E-R模型。实体是我们所在的世界里各个事物的抽象,实体与实体之间可分成一对一、一对多和多对多等三种关系。而E-R模型的基本对象是实体,系统根据三种关系形成逻辑结构模式,设计成对应的关系模型,最后依据该结果整理成数据库表。本系统的数据库能够分出的实体有:系统管理员、用户、程序员、日志、菜单、部门、角色等,系统总体E-R图如图5-1所示:图STYLEREF1\s5-SEQ图\*ARABIC\s11系统总体E-R图数据库数据字典表STYLEREF1\s5-SEQ表\*ARABIC\s11depts表表STYLEREF1\s5-SEQ表\*ARABIC\s12users表表STYLEREF1\s5-SEQ表\*ARABIC\s13users_roles表表STYLEREF1\s5-SEQ表\*ARABIC\s14roles表表STYLEREF1\s5-SEQ表\*ARABIC\s15menus表表STYLEREF1\s5-SEQ表\*ARABIC\s16role_menus表表STYLEREF1\s5-SEQ表\*ARABIC\s17logs表用户登陆用户进行登录操作,根据系统管理员创建用户账户时所选的某一角色决定该用户主页面最终显示有几个模块,当输入的账号密码错误,会提醒是那个地方错了,如果用户选择RemberMe按钮,在系统规定时间内,该用户无需再次登录。用户登陆流程图如图5-2所示:图STYLEREF1\s5-SEQ图\*ARABIC\s12登录流程图系统登录页面有密码、账号、RememberMe和登录按钮等页面信息。实际如图5-3所示:图STYLEREF1\s5-SEQ图\*ARABIC\s13登录页面日志模块程序员可以对日志进行管理,系统会根据用户操作自动增添日志,管理员可以在此查询或删除。当程序员点击删除按钮时,如果没有选择,会弹出“请先选择”提示框;点击全选按钮时,会将该页面所有日志选中。日志模块流程图如图5-4所示:图STYLEREF1\s5-SEQ图\*ARABIC\s14日志管理流程图当点击日志管理按钮,页面自动显现该系统内由用户在此系统上操作后产生的所有日志信息,如图5-5所示:图STYLEREF1\s5-SEQ图\*ARABIC\s15日志信息页面用户模块每当有新员工加入公司,就会有管理员在该模块增加该员工基本信息,当点击用户管理按钮时,用户信息表会呈现所有员工信息,包括管理员和程序员,在此模块可以管理员工的辞职与在职状态,这样方便管理员进行员工管理。该模块不能删除员工信息,只有禁用或启用员工账号,当管理员禁用某一账号时,该员工不能登录该系统,系统会显示报错信息。用户模块出现如图5-6~~5-8所示:图STYLEREF1\s5-SEQ图\*ARABIC\s16员工信息管理图图STYLEREF1\s5-SEQ图\*ARABIC\s17添加用户图图STYLEREF1\s5-SEQ图\*ARABIC\s18修改用户图修改密码本系统管理员和程序员都可使用密码修改功能,由管理员创建的员工账号初始密码是统一的,当有需要时可以通过修改密码模块修改自身登录密码,使系统账号更加安全,其工作流程如图5-9所示:图STYLEREF1\s5-SEQ图\*ARABIC\s19修改密码流程图所有员工包括管理员、程序员的修改密码页面都是一致的,其实际效果图如图5-10所示:图STYLEREF1\s5-SEQ图\*ARABIC\s110密码修改图菜单模块菜单模块具有四项功能,查询功能菜单、添加菜单、修改菜单和删除菜单功能。程序员查询可以查看该系统现有功能,使程序员对该系统有个大概的了解,添加菜单让程序员对该系统进行升级,修改菜单让程序员可以改正该系统错误的部分,不用浪费时间去重新添加一个,删除功能方便程序员对不恰当的功能进行消除。当程序员在菜单管理模块进行一系列操作后,查询页面会自动进行刷新,菜单查询流程图如图5-11所示:图STYLEREF1\s5-SEQ图\*ARABIC\s111菜单查询流程图菜单管理模块功能中出现的版面如图5-12~~5-14所示:图STYLEREF1\s5-SEQ图\*ARABIC\s112菜单信息表图STYLEREF1\s5-SEQ图\*ARABIC\s113菜单功能修改图图STYLEREF1\s5-SEQ图\*ARABIC\s114菜单功能增加图在菜单添加和修改页面中,上级菜单功能的实现是以树结构呈现各个菜单,如图5-15所示:图STYLEREF1\s5-SEQ图\*ARABIC\s115上级菜单功能实现图角色模块当公司要新增某一个岗位时,由管理员在角色管理模块进行该岗位角色的添加并赋予相应的几个功能模块,在该模块中还可以通过角色名模糊查询某一角色,在创建角色后出现错误也可修改角色信息或删除这一角色。管理员想要知道一个岗位的所有信息,通过查询框模糊查找该角色,使管理员知道该公司有多少岗位,且增加岗位时不会与之前创建的重复。客户端的实际效果图如图5-16所示:图STYLEREF1\s5-SEQ图\*ARABIC\s116角色信息表当管理员在角色模块进行添加与修改操作时,页面中的授权选项以树结构显示,点击功能前面的“+”“-”按钮时,展现或收缩其下级功能,使客户端变得简洁美观,如图5-17和5-18所示:图STYLEREF1\s5-SEQ图\*ARABIC\s117角色修改图图STYLEREF1\s5-SEQ图\*ARABIC\s118角色添加图部门模块部门模块有4种功能,查询、添加、修改和删除部门。管理员点击部门管理按钮就可直接查看所有部门,使管理员知道该公司所有部门,方便人员管理,添加功能让管理员可以增填部门,修改菜单让管理员可以改正该部门信息中不满意的描述,不用浪费时间去重新添加一个,删除功能方便管理员对不需要的部门进行去除。客户端实现如图5-7-2所示:图STYLEREF1\s5-SEQ图\*ARABIC\s119部门信息表图STYLEREF1\s5-SEQ图\*ARABIC\s120增加部门图图STYLEREF1\s5-SEQ图\*ARABIC\s121部门信息修改图系统测试系统测试是保证系统中的每项功能在实际运用中不会出现问题以及能够发现开发时没有发现的问题以便修改,确保程序正常运行的测试。系统测试主要是为了验证该系统的功能是否符合预期效果,以及检测程序员在开发过程中没有察觉的错误与矛盾。一般系统测试采用黑盒测试、单元测试、混合测试等方法进行测试,本此次系统测试采用的是单元测试。用户登录表STYLEREF1\s6-SEQ表\*ARABIC\s11用户登录单元测试表第一次测试测试功能用户登录测试方法单元测试1、测试目的测试用户是否可以成功登录2、步骤num1、输入无误的账号和密码,之后不做任何操作,直接单击登录按钮num2、输入无误的账号和密码,点击“记住我”按钮,单击登录按钮num3、输入错误的账号和密码,单击登录按钮num4、输入错误的账号或密码,单击登录按钮3、实验结果(1)登录成功,跳转到主页面,下次登陆时继续输入正确的账号密码(2)登录成功,跳转到主页面,下次登录无需输入账号密码(3)登录失败,页面出现提示,账号不正确(4)登录失败,页面出现提示,账号不正确或者密码不正确日志模块查找日志表STYLEREF1\s6-SEQ表\*ARABIC\s12查找日志单元测试表第二次测试测试功能查看日志信息测试方法单元测试1、测试目的测试程序员是否能查询日志信息2、步骤num1、在日志管理页面,输入日志中已有的用户名,点击查询num2、在日志管理页面,输入日志中已有的单个字母,点击查询num3、在日志管理页面,输入日志中没有的用户名,点击查询3、实验结果(1)查询成功,页面只显示该用户名的日志记录(2)查询成功,页面显示了含有该字母的用户名的日志记录(3)查询失败,页面弹出提示框“没有找到对应的记录”日志删除表STYLEREF1\s6-SEQ表\*ARABIC\s13删除日志单元测试表第三次测试测试功能删除日志信息测试方法单元测试1、测试目的测试程序员是否能删除日志信息2、步骤num1、在日志管理页面,选择某一个日志信息,点击删除num2、在日志管理页面,选择多个日志信息,点击删除num3、在日志管理页面,选择“全选”日志信息,点击删除num4、在日志管理页面,不选择日志信息,点击删除3、实验结果(1)删除成功,页面自动更新,该记录消失(2)删除成功,页面自动更新,选择的所有记录消失(3)删除成功,页面自动更新,该页所有记录消失(4)删除失败,页面弹出提示框“请先选择”用户模块添加员工表STYLEREF1\s6-SEQ表\*ARABIC\s14员工入职单元测试表第四次测试测试功能添加员工信息测试方法单元测试1、测试目的测试管理员能不能添加员工信息2、步骤num1、在用户添加页面,只填写用户名,点击Savenum2、在用户添加页面,只填写用户名和密码,点击Savenum3、在用户添加页面,填写用户名、密码和分配角色,其余空白,点击Savenum4、在用户添加页面,填完全部信息,点击Save3、实验结果(1)添加失败,出现提示框“密码不能为空”(2)添加失败,出现提示框“至少要为用户分配角色”(3)添加成功,自动回到查询页面,页面信息出现该用户信息(4)添加成功,自动回到查询页面,页面信息出现该用户信息禁用启用用户和修改用户信息表STYLEREF1\s6-SEQ表\*ARABIC\s15员工信息修改测试表第五次测试测试功能用户禁用启用、用户信息的修改测试方法单元测试1、测试目的测试管理员是否可以禁用启用户和修改用户信息2、步骤num1、在用户管理页面,选择一个用户信息,点击修改num2、在用户管理页面,不选择用户信息,点击修改num3、在用户管理页面,点击某一个用户信息的操作栏3、实验结果(1)修改成功,进入修改页面进行对应的修改(2)修改失败,出现提示框“请先选择”(3)操作成功,该用户已禁用\启用,用该用户登录无法登录\成功登录菜单管理功能的添加与修改表STYLEREF1\s6-SEQ表\*ARABIC\s16菜单功能增修测试表第六次测试测试功能功能菜单的添加和修改测试方法单元测试1、测试目的测试管理员是否能添加和修改功能菜单2、步骤num1、在菜单管理页面,选择一个菜单,点击修改num2、在菜单管理页面,不选择用户信息,点击修改num3、在添加页面,不输入菜单名称,点击Savenum4、在添加页面,输入菜单名称,点击Savenum5、在添加页面,输入所有相关信息,点击Save3、实验结果(1)修改成功,进入修改页面进行对应的修改(2)修改失败,出现提示框“请先选择”(3)添加失败,出现提示框“菜单名不能为空”(4)添加成功,自动回到查询页面,页面信息出现该菜单功能(5)添加成功,自动回到查询页面,页面信息出现该菜单功能功能的删除表STYLEREF1\s6-SEQ表\*ARABIC\s17菜单功能删除测试表第七次测试测试功能功能菜单的删除测试方法单元测试1、测试目的测试管理员是否能删除功能菜单2、步骤num1、在菜单管理页面,选择一个父菜单,点击删除num2、在菜单管理页面,选择一个子菜单,点击删除num3、在菜单管理页面,不选择任何菜单,点击删除3、实验结果(1)删除失败,出现提示框“请先删除子菜单”(2)删除成功,页面自动更新,该菜单消失(3)删除失败,出现提示框“请先选择”部门管理表STYLEREF1\s6-SEQ表\*ARABIC\s18部门管理测试表第八次测试测试功能部门信息的增删改测试方法单元测试1、测试目的测试管理员是否能添加、修改、删除部门信息2、步骤num1、在部门管理页面,选择一个父菜单,点击删除num2、在部门管理页面,选择一个子菜单,点击删除num3、在部门管理页面,不选择任何菜单,点击删除num4、在部门添加页面,输入相关信息,点击Savenum5、在部门查看页面,选择其中一个菜单,点击修改3、实验结果(1)删除失败,出现提示框“此元素有子元素,不允许删除”(2)删除成功,页面自动更新,该菜单消失(3)删除失败,出现提示框“请先选择”(4)添加成功,自动跳转到查询页面,页面出现添加的部门信息(5)修改成功,进入修改页面进行对应的修改角色管理角色的删除与查询表STYLEREF1\s6-SEQ表\*ARABIC\s19角色信息删除查询测试表第九次测试测试功能角色的删除和信息查询测试方法单元测试1、测试目的测试管理员是否能查找角色、删除角色信息2、步骤num1、在角色管理页面,输入用户名,点击查询num2、在角色管理页面,点击某一个角色信息后的delete按钮3、实验结果(1)查询成功,页面显示该用户名的角色信息(2)删除成功,页面自动更新,该角色信息消失角色添加与修改表STYLEREF1\s6-SEQ表\*ARABIC\s110角色增添测试表第十次测试测试功能角色的增加和修改测试方法单元测试1、测试目的测试管理员是否可以修改角色信息、增添角色2、步骤num1、在角色添加页面,输入名称和选择授权,点击Savenum2、在角色添加页面,只输入名称,点击Savenum3、在角色管理页面,点击某个角色的“update”,进入修改页面,进行授权修改3、实验结果(1)添加成功,自动回到查询页面,页面信息出现该角色信息,在身为该角色的用户登录时,菜单栏只出现添加时所授权的功能(2)添加失败,出现提示框“请为角色赋予权限”(3)修改成功,当身为该角色的用户登录时,菜单栏只出现修改后的授权功能密码修改表STYLEREF1\s6-SEQ表\*ARABIC\s111密码修改单元测试表第十一次测试测试功能密码修改测试方法单元测试1、测试目的测试用户是否可以修改密码2、步骤num1、输入有误的前任密码,和两个一样的现任密码,点击Savenum2、输入无误的前任密码,和两个一样的现任密码,点击Savenum3、输入有误的前任密码,和两个不一样的现任密码,点击Savenum4、输入无误的前任密码,和两个不一样的现任密码,点击Save3、实验结果(1)密码修改失败,出现提示框“原密码不正确”(2)密码修改成功,再次登录要使用修改后的密码(3)密码修改失败,出现提示框“两次密码输入不一致”(4)密码修改失败,出现提示框“两次密码输入不一致”结论总结英特网的现世,彻底地改变了全世界人们使用信息的方式,这种改变的方向朝着减少商品流通环节,缩短信息的传播时间、提高信息收集效率进行。在企业运营中,时间的缩短代表资金周转的加快,代表整体运营速度的加快,毫无疑问将创造更多的价值。员工信息管理系统的设计与实现即将结束,该系统不知多
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 机舱拆解工保密意识强化考核试卷含答案
- 滤棒成型设备操作工岗前学习型组织考核试卷含答案
- 冲压工岗前工艺规程考核试卷含答案
- 护工岗位工作质量考核试卷含答案
- 化学制浆工安全生产规范测试考核试卷含答案
- 美容店长职业发展规划
- 威海职校发展规划
- 碧桂园项目地下室钢筋工程施工方案-施工组织设计
- 临床医学概论考试试题及答案
- 纸箱包装企业安全投入保障制度
- 《简支梁计算》课件
- GB/T 15934-2024电器附件电线组件和互连电线组件
- 08J333 建筑防腐蚀构造
- 广东省揭阳市普宁市2023-2024学年八年级下学期7月期末数学试题
- 2069-3-3101-002WKB产品判定准则-外发
- (高清版)DZT 0216-2020 煤层气储量估算规范
- 海南迪爱生微藻有限公司 藻蓝色素车间扩建及锅炉技改项目 环评报告
- 2023年四川宜宾市珙县选调(聘)机关事业单位人员笔试参考题库(共500题)答案详解版
- 信息分析:数据、方法与应用的视角
- 气体灭火系统模拟启动喷气切换操作试验记录
- GB/T 5585.2-2005电工用铜、铝及其合金母线第2部分:铝和铝合金母线
评论
0/150
提交评论