摘 要
随着信息时代的来临,过去的传统管理方式缺点逐渐暴露,对过去的传统管理方式的缺点进行分析,采取计算机方式构建宿舍管理系统。本文通过课题背景、课题目的及意义相关技术,提出了一种楼宇信息、宿舍信息、宿舍安排、缺勤信息等于一体的系统构建方案。
本文通过采用B/S架构,MySQL数据库以及java语言、Spring Boo框架,结合国内宿舍管理现状,开发了一个基于基于Spring Boot的宿舍管理系统。系统分为多个功能模块:学生、宿舍管理、楼宇信息、宿舍信息、宿舍安排、缺勤信息等。通过系统测试,本系统实现了系统设计目标,相对于人工管理方式,本系统有效的减少了学校的经济投入,并且大幅度提升了宿舍管理的效率。
关键词:宿舍管理系统;java语言;Spring Boo框架;MySQL数据库
Abstract
With the advent of the information age, the shortcomings of the traditional management methods in the past are gradually exposed. The shortcomings of the traditional management methods in the past are analyzed, and the dormitory management system is built by computer. Based on the background, purpose and significance of the project, this paper proposes a system construction scheme that integrates building information, dormitory information, dormitory arrangement and absence information.
This paper develops a dormitory management system based on Spring Boot by using B/S architecture, MySQL database, Java language, Spring Boo framework and combining the current situation of domestic dormitory management. The system is divided into several functional modules: students, dormitory management, building information, dormitory information, dormitory arrangement, absence information, etc. Through the system test, the system has achieved the system design goal. Compared with the manual management mode, the system has effectively reduced the economic investment of the school and greatly improved the efficiency of dormitory management.
Key words: dormitory management system; Java language; Spring Boo framework; MySQL database
目 录
摘 要 I
Abstract II
1 绪 论 1
1.1 课题背景 1
1.2 课题目的及意义 1
1.3 课题研究现状 2
1.4 论文主要工作内容 3
2 系统关键技术 4
2.1 Spring Boot框架介绍 4
2.2 MySQL数据库 4
2.3 B/S架构 5
2.4 java语言介绍 5
3 系统分析 7
3.1 可行性分析 7
3.1.1 技术可行性 7
3.1.2 操作可行性 7
3.1.3 经济可行性 7
3.1.4 法律可行性 7
3.2 系统性能分析 8
3.2.1 系统安全性 8
3.2.2 数据完整性 8
3.3 系统功能分析 8
3.4 系统流程分析 10
3.4.1 数据开发流程 10
3.4.2 用户登录流程 10
3.4.3 系统操作流程 11
3.4.4 新增信息流程 12
3.4.5 修改信息流程 12
3.4.6 删除信息流程 13
4 系统设计 14
4.1 系统概要 14
4.2 系统结构设计 14
4.3数据库设计 15
4.3.1 数据库设计原则 15
4.3.2 数据库实体 15
4.3.2 数据库表设计 16
4.4 系统时序图 18
4.4.1 注册时序图 18
4.4.2 登录时序图 19
4.4.3 管理员修改用户信息时序图 19
4.4.4 管理员管理系统信息时序图 20
5 系统的实现 21
5.1 基本任务 21
5.2 管理员功能模块 21
5.3 学生功能模块 24
5.4 宿舍管理功能模块 28
6 系统测试 31
6.1 测试环境 31
6.2 测试目的 31
6.3 测试概述 31
6.4 单元测试 33
6.4.1 注册测试 33
6.4.2 登录测试 33
6.5 集成测试 34
结 论 35
参考文献 36
致 谢 37
1 绪 论
1.1课题背景
随着网络的高速发展,网络技术的应用越来越广泛,信息化技术发展迅速,计算机管理系统优势逐渐体现,并且大量的计算机进入了千家万户。宿舍管理系统成为信息时代的一个重要代表,由于其涉及的数据量过大,过去的人工管理方式已经很难再维持下去,所以引用了信息化技术来进行管理[1]。计算机系统管理方式替代了人工管理方式,相对过去人工管理方式,利用计算机进行宿舍管理系统查询便利、信息准确率高、成本降低、效率提高、本次系统开发主要以学校宿舍为对象,根据功能需求开发整个信息化系统。
1.2 课题目的及意义
随着信息化管理技术不断发展,传统的宿舍管理已经无法适应,效率与预期相差甚远,因此需要开发一套操作方便,效率较高的宿舍管理系统。当前,21新世纪,人们已经进入了信息时代,人们获取信息的方式大大增加,摆脱了传统的报纸、电视、广播等媒体,而是从各种网络、自媒体平台上获取信息,这就导致日常生活中产生的数据信息十分巨大,尤其是对于宿舍管理,更需要大量的信息[2]。本系统能为学生、宿舍管理提供一个宿舍管理平台,就能够快速有效的帮助学生在线查看楼宇信息、宿舍信息、宿舍安排等,宿舍管理发布楼宇信息、宿舍信息、宿舍安排等,并且可以让管理员能够轻松效率地新增所有的信息。系统开发的意义主要在于两个方面,一方面,系统上线后,能够为学生与宿舍管理带来很大便利,宿舍管理涉及的数据量较大,要求精度高,采用计算机系统能够很好满足此需求,并且随着目前电脑的普及,方便用户使用。另一方面,通过自己动手操作设计系统,不仅可以提升自己的学习兴趣,也是在进入社会之前的一次很好的锻炼机会。
1.3课题研究现状
其实,相关的研究在国外已经开展了很多年了,将学校宿舍与信息技术相融合的理念在欧美等发达国家的学校宿舍建设中很受欢迎美国开放的Ravel平台,能够在电脑、手机上实现远程查看楼宇信息、宿舍信息、宿舍安排、缺勤信息等功能,极大的丰富了线上宿舍管理模式。于是希望通过互联网技术保障实现宿舍管理系统[3]。但现如今,也有许多国外学者提出,信息化时代带来的局面乱象越来越多,日益增长的宿舍管理平台让人应接不暇,需一场数字化的现代化的转型,建立可靠的宿舍管理系统,实现数字管理。
随着学生不断的增加,越来越多的学校开始加入了网上宿舍大潮中,但是我国网上宿舍管理效果低下,而且出错率也很高。因此大家迫切需要一款更加专业化的宿舍管理系统,设计该系统主要目的是为了方便学校可以有一个非常好的宿舍管理平台,管理员也可以通过该系统进行更加方便的管理操作。
1.4 论文主要工作内容
本文设计并实现了一个宿舍管理系统,主要包括以下具体工作内容:
(1)参考国内外相关系统开展了系统的需求分析,明确了楼宇信息、宿舍信息、宿舍安排、缺勤信息等主要功能需求;
(2)设计系统技术方案,采用java语言,选用MySQL数据库、B/S架构、Spring Boot框架来设计并实现本系统。
(3)具体介绍了各个功能模块的设计与实现。
(4)对系统的注册、登录等功能进行了全面的测试[4]。
2 系统关键技术
2.1 Spring Boot框架介绍
Spring Boot是近几年最为流行的后台开发框架,它的诞生一改过去Spring框架开发中繁琐的配置,极大地简化了Spring应用的搭建和开发。Spring Boot框架不仅保有了Spring框架中的所有优秀特性,还通过使用特定的配置方式,在底层帮助开发人员在工程创建是就预先做了很多配置,这样在开发时就不再需要开发人员过多进行繁琐的配置了。另外在Spring Boot中集成了大量框架,这就使得开发人员不再需要到处寻找在导入开发中需要依赖的jar包,同时也解决了依赖包版本冲突问题,从而提高了依赖包引用的稳定性,从而实现了对Spring应用搭建和开发过程的简化。
2.2 MySQL数据库
数据库系统是一个进行数据存储的系统,数据库就是这个系统的库,用来存放通过系统的数据,数据库在开发人员的日常生活中,占据了很大的地位。因为使用数据可以使自己系统存储数据更加方便、快捷。
MySQL之所以受到广大开发人员的欢迎,主要原因使因为数据库的使用是免费的。最开始的数据库研发出后,是需要收费的,但是随着MySQL的出现和不断更新,越来越多的学生去使用这款软件。首先它是开源且免费的,这样大大减少了开发的成本;第二MySQL可以在多个平台上使用,在B/S、Windows和Linux上都可以使用。其次它的性能也是十分强大的,性价比极高。最后,MySQL相比其他数据库语言来说,更加简单易于上手;可以与很多平台搭建联系,比如本文使用的Java语言。
2.3 B/S架构
B/S架构,也就是浏览器/Server (Browser/Server),是在因特网技术发展过程中, C/S架构的一种改变和完善。采用该架构,可以充分利用 WWW的浏览器来完成学生接口,而在前端完成交易的部分业务,而服务端则完成了交易的基本功能。这就构成了3- tier的构造。B/S体系架构,采用了日益完善的 WWW技术,将各种 Script、 VBScript、 JavaScript、 ActiveX等技术相融合,通过一款普通的网络浏览器,既可以完成一些复杂的特定程序,又可以节省大量的资源,又可以节省大量的资源。由于视窗98/2000把浏览器技术移植到了操作系统中,所以这个架构现在已经是目前最受欢迎的应用程序架构了。
B/S架构,也就是浏览/伺服器(Browser/Server)架构,是指仅有一个伺服器(Server)被安装,而客户机则使用浏览(Browse)来执行该软件。这是因特网技术出现后, C/S架构的一种改变与完善。它充分运用日益完善的 WWW技术,并将各种 Script、 JavaScript、 ActiveX等 Script技术相融合,形成了一个崭新的体系结构技术。
2.4 Java语言介绍
Java是一种在Web应用开发中得到广泛使用的脚本语言,经常被用来对用户的相关行为做出反应。它还具有面向对象的设计能力,使设计开发过程更加直观和模块化,并在HTML基础上进行交互Web页面的开发。这种脚本语言的问世,使用户与页面之间的实时、动态交互成为现实,丰富了页面的内容,增强了页面的活力。另外,Java技术也被广泛地运用于该系统,比如对用户输入的数据进行检测,以保证其有效性。Java技术可以在不依赖Web服务程序的基础上在本地客户机上运行。从而有效地解决了因网络速度所带来的迟缓问题,使用户能够更加顺畅、快捷地进行访问。一些功能,比如用户的数据输入,可以通过JavaScript这样的客户语言来完成。该系统采用Java客户机进行用户身份认证,确保了系统的安全性和可靠性。
3 系统分析
3.1 可行性分析
宿舍管理系统主要目标是实现网上的相关信息管理服务。在确定了目标后,我们从以下四方面对能否实现本系统目标进行可行性分析[5]。
3.1.1 技术可行性
技术上的可操作性是项目建设顺利进行的一个关键因素,技术措施必须达到要求,方能使项目顺利进行。该方案使用了开放源码的代码,并使用 java等技术,对软件的设计具有适度的困难和对电脑的硬件需求。所有的技术都很容易使用。该项目具有技术上的可行性[6]。
3.1.2 操作可行性
当今社会,电脑已经是耳熟能详的存在了,绝大部分用户都可以通过电脑轻松操作本系统。由此可知,我们的管理系统对于绝大部分用户来说,操作是完全可行的,并不存在操作上的盲区[7]。
3.1.3 经济可行性
本系统所需要用到的所以的工具都是开源,不收费的,并且本系统因为不具有太过于复杂的结构,用户维护系统的费用也不高。所以,本系统的经济可行性是可行的。
3.1.4 法律可行性
此宿舍管理系统是自己设计的管理系统,具有很大的实际意义。因为无论是软件还是数据库,采用的都是开源代码,因此这个系统的开发和设计,并不存在侵权等问题,在法律上完全具有可行性。
综上所述,宿舍管理系统在技术、经济、操作和法律上都具有很高的可行性,开发此程序是可行的[8]。
3.2 系统性能分析
3.2.1 系统安全性
宿舍管理制度必须由领导机构严格执行。具体要求如下:
(1)如果要使用宿舍管理系统,必须先注册才能进行登录。未获许可的使用者,不可以任意的方法,进入或浏览系统资讯及资料,因而本系统将会得到保护。
(2)在不同司法管辖区的具体实施。使用其他权限登录时,无法跳过此操作[9]。
(3)如果专门应用,该系统将包含许多必须保密的数据和信息。该系统存在系统漏洞,发布此信息将给用户造成重大损失。因此,我们充分保证了该规则和系统的发展趋势。
3.2.2 数据完整性
(1)必须对所有的数据进行详尽的记载,而该信息的内容不得为空白。
(2)各种资料的关联一定要恰当。
(3)在不同的档案中,同一资料资讯应该互相相符[10]。
3.3 系统功能分析
宿舍管理系统主要有管理员和学生、宿舍管理,三个功能模块:管理员模块、学生、宿舍管理模块。以下将对这三个功能的作用进行详细的剖析[11]。
管理员模块:管理员在系统中的是核心用户,管理员登录后,可以对后台系统进行管理。主要功能有:首页、个人中心、学生管理、宿舍管理、通知公告管理、楼宇信息管理、宿舍信息管理、宿舍安排管理、缺勤信息管理等功能。管理员用例如图3-1所示。
图3-1 管理员用例图
学生:学生进入系统可以对首页、个人中心、通知公告管理、楼宇信息管理、宿舍信息管理、宿舍安排管理、缺勤信息管理等进行操作。学生用例如图3-2所示。
图3-2学生用例图
宿舍管理:宿舍管理进入系统可以对首页、个人中心、通知公告管理、楼宇信息管理、宿舍信息管理、宿舍安排管理、缺勤信息管理等进行操作。宿舍管理用例如图3-3所示。
图3-3宿舍管理用例图
3.4 系统流程分析
3.4.1 数据开发流程
宿舍管理系统开发时,首先对此系统进行需求分析,进而对系统进行模块、编码等详细设计总体的设计规划,设计系统功能模块,数据库的选择等,本系统的开发流程如图3-4所示
图3-4系统开发流程图
3.4.2 用户登录流程
要想利用这个软件来进行系统的安全管理,首先需要登录到该软件中。如图3-5所示。
图3-5登录流程图
3.4.3 系统操作流程
用户登录系统时需要输入正确的正确的用户名和密码,数据库在进行匹配核实后匹配结果正确才能进入系统,若错误则提示用户名或密码错误,即无法登录。操作流程如图3-6所示。
图3-6 系统操作流程图
3.4.4 新增信息流程
管理员可以新增信息,用户新增可以自己权限内的信息,输入信息后,要想利用这个软件来进行系统的安全管理,首先需要登录到该软件中。新增信息流程如图3-7所示。
图3-7 新增信息流程图
3.4.5 修改信息流程
管理员可以修改信息,用户可以修改自己权限内的信息,首先进入修改信息界面,输入需要修改信息,在系统进行判定为正确和合规后修改成功,并将数据更新至数据库。信息不合法则修改失败,重新输入。修改信息流程图如图3-8所示。
图3-8 修改信息流程图
3.4.6 删除信息流程
管理员可以删除信息,点击删除按钮,系统会提示是否删除信息,点击确定,则信息被删除,数据库中的信息随之删除,删除信息流程图如图3-9所示。
图3-9 删除信息流程图
4 系统设计
4.1 系统概要
在对该方法进行了系统的解析之后,进行了一个包括了整体和细节的记性系统的设计。整体的设计仅仅是一个整体的方案,通过整体的方案,我们可以将整个体系中的某些部分分割开来,比如文件,文档,数据等等。经过整体的规划,我们可以将这些软件的各个部分,都分成了不同的部分。不过这仅仅是一种初步的分类,并未实际实施。
总体来说,这是一个初步的方案,也是一个工程。我们可以进行多种方案的综合,在比较中,从性能、成本、效益三方面进行比较,最后得出最佳的产品,选用好的总体设计能够减少成本,提高学校效益,从这一点来讲,整体设计非常重要的。
宿舍管理系统工作原理图如图4-1所示:
图4-1 系统工作原理图
4.2 系统结构设计
构图是系统的体系结构,体系结构是体系结构体系的一部分,体系结构体系是体系结构体系的重要组成部分。宿舍管理系统的整体结构设计如图4-2所示;
图4-2 系统整体架构图
4.3数据库设计
在电脑资讯系统中,以资料库为基础。当前计算机体系中最重要的是数据库。数据库的发展好坏,直接关系到整个系统的性能与运行效率。
4.3.1 数据库设计原则
利用 ER模式进行数据库的概念结构设计。E-R模型法的组成元素有:实体、属性、联系,E-R模型用E-R图表示,是一个关于工作环境中的事件的信息,而一个属性是关于物理特征的说明。在系统的设计过程中,资料库发挥了关键作用。下面设计出这几个关键实体的实体---关系图。
4.3.2 数据库实体
在一个资料模式中,一个被称作"实例"的实体,与真实的"事件"或者"物体"相匹配,可以与其它物体区分开来。例如,公司中的每个员工,家里中的每个家具。
本系统的E-R图如下图所示:
1、宿舍管理信息实体图如图4-3所示:
图4-3宿舍管理信息实体图
2、宿舍信息实体图如图4-4所示:
图4-4宿舍信息实体图
3、学生信息实体图如图4-5所示:
图4-5学生信息实体图
4、宿舍安排实体图如图4-6所示:
图4-6宿舍安排实体图
4.3.3 数据库表设计
宿舍管理系统有一个内部数据库。对于数据库系统设计一般基于对我国现有学校数据库系统进行优化管理的操作系统。通常广泛采用的学校数据库资源管理软件系统主要类型包括mysqlserver、mysql、oracle等。该管理系统主要采用了mysql大型数据库资源管理软件。
下表将详细列出宿舍管理系统的数据库中所有列表。每一份量表的设计成果列出数据库的表信息属于设计的一部分,下面介绍数据库中的各个表的详细信息。
表4-1:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-2:通知公告
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
biaoti varchar 200 标题
leixing varchar 200 类型
tupian longtext 4294967295 图片
gonggaoneirong longtext 4294967295 公告内容
fabushijian datetime 发布时间
表4-3:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP
表4-4:宿舍信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
louyumingcheng varchar 200 楼宇名称
sushehao varchar 200 宿舍号
susheleixing varchar 200 宿舍类型
louhao varchar 200 楼号
chuangweishu int 床位数
weizhi varchar 200 位置
表4-5:宿舍管理
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
gonghao varchar 200 工号
mima varchar 200 密码
xingming varchar 200 姓名
xingbie varchar 200 性别
touxiang longtext 4294967295 头像
nianling varchar 200 年龄
dianhua varchar 200 电话
表4-6:宿舍安排
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
louyumingcheng varchar 200 楼宇名称
sushehao varchar 200 宿舍号
susheleixing varchar 200 宿舍类型
xuehao varchar 200 学号
xingming varchar 200 姓名
louhao varchar 200 楼号
chuangweishu int 床位数
chuangweihao varchar 200 床位号
beizhu longtext 4294967295 备注
anpaishijian date 安排时间
gonghao varchar 200 工号
表4-7:缺勤信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
mingcheng varchar 200 名称
riqi date 日期
xuehao varchar 200 学号
xingming varchar 200 姓名
banji varchar 200 班级
shouji varchar 200 手机
sushehao varchar 200 宿舍号
queqinshuoming longtext 4294967295 缺勤说明
gonghao varchar 200 工号
suguanxingming varchar 200 宿管姓名
表4-8:楼宇信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
louyumingcheng varchar 200 楼宇名称
xingming varchar 200 宿管
weizhi varchar 200 位置
louceng varchar 200 楼层
fangjianshu varchar 200 房间数
jieshao longtext 4294967295 介绍
表4-9:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-10:学生
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键
主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
xuehao varchar 200 学号
mima varchar 200 密码
xingming varchar 200 姓名
xingbie varchar 200 性别
touxiang longtext 4294967295 头像
xueyuan varchar 200 学院
zhuanye varchar 200 专业
banji varchar 200 班级
shouji varchar 200 手机
4.4 系统时序图
对于系统设计的详细描述主要采用了时序图的方式,时序图描述了对象之间传递消息的时间顺序, 用来表示用例中的行为顺序, 是强调消息时间顺序的交互图; 时序图描述的事物: 时序图描述系统中类和类之间的交互, 将这些交互建模成消息交换, 时序图描述了类以及类之间的交换以完成的期望行为的消息, 时序图中每条消息都代表了类的一个操作或者引起状态机改变的触发事件。
4.4.1 注册时序图
注册时序图,如图4-1所示。
图4-1 注册时序图
4.4.2 登录时序图
登录时序图如图4-2所示。
图4-2 登录时序图
4.4.3 管理员修改用户信息时序图
管理员修改用户信息时序图如图4-3所示。
图4-3 管理员修改用户信息时序图
4.4.4 管理员管理系统信息时序图
管理员管理系统信息时序图如图4-4所示。
图4-4 管理员管理系统信息时序图
~~
5 系统的实现
~~
5.1 基本任务
该系统的实施方式是指能精确地描绘要实施的对象,以便后续的代码可以按照系统的实际情况用编程的方式来写相应的软件。
系统实现的基本任务如下:
(1)模块的数据结构进行设计,在之前的需求分析、概要设计中更加明确地界定更加含糊的资料类型。
(2)更加精确地对每个模板进行了更加细致的算法设计,并对每个组件的处理过程进行了算法的说明。
(3)执行实体化的资料库。
(4)其他设计:有时候,还要考虑到系统的不同,如:输入/输出格式设计、代码设计、人机对话设计等。
(5)对系统的说明书进行编写。
(6)评审:审查程序中的规则和数据库的实体构造。
系统结构可分为具有三个不同功能的包的java源代码、系统的数据库文件、界面代码。java源代码中三个不同包分别为控制、逻辑、缩写层,分别控制也不同的程序具有不同的性质。有了他们就能对系统的数据进行增删改查,完成界面的显示和数据统计,产生随机数和属性文件的读取。定时器类、翻页工具类等,包含了日期转换、字符串处理、获取编译环境等信息。这些类极大地方便了Java编程,日常开发中,经常要用来这些类。
5.2 管理员功能模块
管理员登录,通过登录页面填写用户名、密码、角色,进行登录,如图5-1所示。
图5-1 管理员登录界面图
管理员登录进入宿舍管理系统可以对首页、个人中心、学生管理、宿舍管理、通知公告管理、楼宇信息管理、宿舍信息管理、宿舍安排管理、缺勤信息管理等功能,进行详细操作,如图5-2所示。
图5-2 管理员功能界面图
管理员点击学生管理,在学生管理页面中可以对学号、姓名、性别、头像、学院、专业、班级、手机等信息,进行查询、新增或者删除学生信息等操作,如图5-3所示。
图5-3学生管理界面图
管理员点击宿舍管理,在宿舍管理页面中可以对工号、姓名、性别、头像、年龄、电话等信息,进行查询、新增或者删除宿舍管理信息等操作,如图5-4所示。
图5-4宿舍管理界面图
管理员点击通知公告管理,在通知公告管理页面中可以对标题、类型、图片、发布时间等信息,进行查询、新增或者删除通知公告信息等操作,如图5-5所示。
图5-5通知公告管理界面图
管理员点击楼宇信息管理,在楼宇信息管理页面中可以对楼宇名称、宿管、位置、楼层、房间数等信息,进行查询、新增或者删除楼宇信息等操作,如图5-6所示。
图5-6楼宇信息管理界面图
管理员点击宿舍信息管理,在宿舍信息管理页面中可以对楼宇名称、宿舍号、宿舍类型、楼号、床位数、位置等信息,进行查询、新增或者删除宿舍信息等操作,如图5-7所示。
图5-7宿舍信息管理界面图
管理员点击宿舍安排管理,在宿舍安排管理页面中可以对楼宇名称、宿舍号、宿舍类型、学号、姓名、楼号、床位数、床位号、安排时间、工号等信息,进行查询、或者删除宿舍安排等操作,如图5-8所示。
图5-8宿舍安排管理界面图
管理员点击缺勤信息管理,在缺勤信息管理页面中可以对名称、日期、学号、姓名、班级、手机、宿舍号、工号、宿管姓名等信息,进行查询或者删除缺勤信息等操作,如图5-9所示。
图5-9缺勤信息管理界面图
管理员登录进入宿舍管理系统进行不同模块信息管理的总体流程图如图5-10所示。
图5-10管理员模块总体流程图
5.3 学生功能模块
学生登录,通过登录页面填写用户名、密码、角色,点击登录,如图5-11所示。
图5-11学生登录界面图
学生登录进入宿舍管理系统可以查看首页、个人中心、通知公告管理、楼宇信息管理、宿舍信息管理、宿舍安排管理、缺勤信息管理等内容,如图5-12所示。
图5-12学生功能界面图
学生功能模块操作流程图如图5-13所示:
图5-13学生功能模块操作流程图
5.4 宿舍管理功能模块
宿舍管理登录,通过登录页面填写用户名、密码、角色,点击登录,如图5-14所示。
图5-14宿舍管理登录界面图
宿舍管理登录进入宿舍管理系统可以查看首页、个人中心、通知公告管理、楼宇信息管理、宿舍信息管理、宿舍安排管理、缺勤信息管理等内容,如图5-15所示。
图5-15宿舍管理功能界面图
宿舍管理功能模块操作流程图如图5-16所示:
图5-16宿舍管理功能模块操作流程图
6 系统测试
6.1 测试环境
宿舍管理系统的测试环境如表6-1所示。
表6-1 测试环境信息表
分类 名称 版本
操作系统 Windows 7
数据库 MySQL 8.0
浏览器 Chrome 87.0.4280.88
6.2 测试目的
进行软件测试主要是为了验证产品或者系统是否完成了实现功能,测试能够防止系统出现错误,还能降低开发成本减少不必要的花销,其次测试的好处包括防止错误、降低开发成本和提高性能[12]。其次,通过软件的检测可以对项目的安全性进行鉴别。向开发人员提供软件测试的反馈,并为项目的安全性评价提供必要的资料。此外,软件的检测保证在正式发布之前能够满足在线要求。在每一个开发过程中不断跟踪和对软件的测试。还有,软件测试还能保证系统到达预期的标准,从而能够尽快上线。
在本系统中,主要测试后台,分别对系统的不同模块进行测试,比如学生登录等功能是否实现,实现过程中是否出现问题等。是否能够处理不同的数据。后台主要测试系统经过管理后链接是否顺畅[13]。
6.3 测试概述
1.测试的原则
(1)测试应该以用户的需要为基础。从用户的观点来考虑,最大的问题是软件不能达到用户的预期。有时候,软件产品的测试结果非常完美,但却不是客户最终想要的产品,那么软件产品的开发就是失败的,而测试工作也是没有任何意义的。因此测试应依照客户的需求配置环境,并且按照客户的使用习惯进行测试并评价结果。
(2)尽早测试。由于软件开发过程中的各种不同的环节都会出现问题,所以要及早进行测试,将软件的检测工作渗透到整个软件的整个寿命过程,使测试者可以及早地察觉并防止这些缺陷。减少了 bug修理费用。
(3)穷尽测试是不可能的。因为受时间和财力的制约,无法实现所有不同的输入和输出的综合测试,测试者能够基于测试的风险和轻重缓急等来决定测试的重点,由此来进行测试,并在测试成本、风险和收益间找到一个平衡点。
这是因为测试者不能按时进行测试案例的升级,也可能是因为他们太了解测试案例和目标而导致的。
2.测试的方法
测试方法主要有人工测试和机器测试两种测试方法。
(1)人工测试
人工测试又称代码复审,包括个人复查、走查、会审三种方法。
(2)机器测试
计算机检测有两种方式:黑盒测试和白盒测试。黑盒测试:从外观上找出它的缺点和错误。黑盒测试是在编程接口上进行的,它仅仅是为了检验样品的执行情况,而不是根据要求规范的要求进行;白盒测试:对软件的内在构造进行了剖析,即在编程接口上进行了试验,其目的仅仅在于检验样品的执行情况,而不能满足要求规范的要求,检测来寻找问题。
在最终的检测中,本研究采取了将后黑盒子检测与白盒子检测相融合的方式。黑箱试验是为了对系统的输入、输出性能进行测试,以发现其性能上的误差和潜在的不足。白箱试验的目的是为了检测程序和程序的运行路线,从而找出运行中的问题。该系统有两种方式:单位试验和综合试验。
6.4 单元测试
6.4.1 注册测试
在对注册模块进行测试时,先键入用户名和密码等信息,再按下注册键测试是否能正常注册系统。如果信息填写错误,能否弹出弹框,用来提示学生何处输入错误。
注册测试用例如下表所示。
表6-2注册测试用例
测试模块 学生注册模块测试
测试目的 测试当注册信息输入不符合要求时,系统是否能进行相应处理并给出提示。
测试方法 黑盒测试
测试数据 1不输入用户名和密码,直接点击注册。
2输入未注册过的用户名。例如:qwer
3输入正确用户名,两次密码不一样。例如:用户名qwerty、密码 0001,确认密码1111
预期结果 1 界面不跳转,弹出对话框,提示学生输入必填项。
2界面跳转,弹出对话框,提示学生注册成功。
3界面不跳转,弹出对话框,提示两次密码不一致。
实际结果 与预期结果相同。
结论 注册模块实现成功。
6.4.2 登录测试
登录模块需要测试的功能有:输入登录名和密码,点击"登录"按钮,如果信息新增正确,是否正常进入系统首页。如果信息填写错误,能否弹出弹框,提示学生信息输入有误。登录测试用例如下表所示。
表6-3登录测试用例
测试模块 学生登录模块测试
测试目的 测试当登录信息输入不符合要求时,系统是否能进行相应处理并给出提示。
测试方法 黑盒测试
测试数据 1不输入用户名和密码,直接点击登录。
2输入未注册过的用户名。例如:qwertyu
3输入正确用户名,错误密码。例如:用户名qwertyu、密码 000
4输入正确用户名,正确匹配密码。例如:用户名qwertyu、密码 111
预期结果 1 界面不跳转,弹出对话框,提示学生输入必填项。
2界面不跳转,弹出对话框,提示学生当前用户名尚未注册。
3界面不跳转,弹出对话框,提示学生密码错误。
4界面实现跳转,登录功能正常进行。
实际结果 与预期结果相同。
结论 登录模块实现成功。
6.5 集成测试
集成测试的方案主要如下所述:
(1)在完成安装部署后,将该系统移植到其他电脑,并可以顺利地运行该系统。
(2)学生信息管理模块综合测试,新增一个新的使用者 qq,指定一个普通的角色,查看普通角色的特权,并储存设定。作为 qqq登录,以了解所具有的权利。
(3)根据宿舍管理系统的具体设计和实施,采用多种角色的方式,对各个模块的性能进行检测,并检测各个模块之间的逻辑功是否正确。
通过实验证明,该开发的系统能够满足宿舍管理程序和基础需求。
结 论
宿舍管理系统是一款公平、包容、易操作的系统,基本上能满足使用者的需求,也符合本人的初始发展目的与发展方向。本文主要研究了 java语言和MySQL等技术时的应用,它们都具有自己的优势,使其在实际应用中可以实现功能的稳定,同时也可以实现用户的各种需要。在具体的系统要求和功能模块的具体分析之后,进行了有针对性的设计,最终经过了测试,使整个系统可以正常工作,该宿舍管理系统设计完成。
在这个宿舍管理的过程中,我参照了许多有关的案例,互相学习,互相借鉴。目前已逐渐改进,但仍存在许多缺陷,需要今后继续研究。在设计过程中我遇到了很多困难,包括知识上和技术上,同时由于长时间没有进行独立开发工作,编码熟练度有了明显的下降,一些常用的函数和编码技巧也变得生疏,但好在我及时做出了学习,查阅各种资料,进行广泛的钻研,多做请教,依靠互联网和书籍不断吸取知识,完善自己,最终在师生的协助下,成功完成了该系统。
我认为此系统还是有很多优点的,首先系统结构清晰,易于理解。设计合理,符合用户习惯和人机交互要求,能给用户带来很好的使用体验。代码简洁,注释全面,易于后期的管理和维护,代码健壮,鲁棒性高,适合高校和大学生使用。但同时,也存在部分内容设计不合理,有待改进的情况,我会不断学习。
参考文献
[1] 张继东.Mysql数据库基于Spring Boot的访问技术[J/OL].电子技术与软件工程,2019,(15):169(2020-08-03).
[2] 李春燕,李根.基于java语言的网络信息学生平台设计[J/OL].电子技术与软件工程,2021,(20):9(2020-10-26).
[3]王浩.基于java语言的在线技能评测系统的设计与实现[J].数字技术与应用,2020,(12):171-172.
[4]王金龙,张静.基于java+Mysql的高校慕课(MOOC)学生系统设计[J].通讯世界,2021,(20):276-277.
[5]潘国荣.基于java+Spring Boot+Servlet实现模式的增删改模块的设计与实现[J].信息通信,2017,(08):101-103.
[6]葛建霞.《java动态网页设计》小区失物招领网站中项目学生法的应用研究[J].宿州教育学院学报,2021,20(04):160-161.
[7]李清霞.《java动态网页设计》小区失物招领网站建设与学生模式研究[J].福建电脑,2019,33(06):92-93+166.
[8]曾晰,舒坚.基于java的养老院管理信息系统的设计与实现[J].信息通信,2020,(09):122-124.
[9]傅峰. 基于移动平台的饲养交流系统的设计[J]. 电子设计工程,2019,24(09):66-68+71.
[10]李丹. 派遣信息网络管理平台设计与实现[J]. 软件导刊,2019,15(03):97-98.
[11]付昕. 基于B/S调度信息管理系统的实现[J].山东省农业管理干部学院学报, 2021, 27(4):166-168.
[12] 黄艳峰. 在Java语言中实施"案例医学会网站管理系统"的研究与探索[J]. 电脑知识与技术, 2019, 6(5):1148-1149.
[13] 赵钢. java Servlet+EJB的Web模式应用研究[J]. 电子设计工程,2019, 21(13):47-49.
[14] 肖英. 解决java/Servlet开发中的中文乱码问题[J]. 科技传播, 2020, (1)11-25.
[15] Hsiao I H, Sosnovsky S, Brusilovsky P. Guiding students to the right questions: adaptive navigation support in an e-learning system for Java programming[J]. Journal of Computer Assisted Learning, 2019, 26(4):270-283.
[16]Xue Qingshui,Hou Zongyang,Ma Haifeng,Zhu Haozhi,Ju Xingzhong,Sun Yue. Housing rental system based on blockchain Technology[J]. Journal of Physics: Conference Series,2021,1948(1) .
致 谢
大学的学习生活在这个季节将结束,但是在我的生命这仅仅只是一个逗号,我将面对另一个新的环境开始。通过这次毕业设计的整个开发过程,从需求分析到具体功能实现,再到最终测试和维护的理解有了很大的进步,让我对系统开发有了更深刻的认识,对我个人的实践能力和解决问题的能力,都有了很大的帮助。这是这次毕业设计最大的收获。
首先要感谢我的指导老师,他在论文写作上,给予了我各种无私的帮助,治学严谨,严格要求,使我获得了很大的收获。老师深厚的理论知识和丰富的实践经验,都深深的影响到我,在这方面,我谨表示衷心的感谢。
其次,我还要对所有的老师和同学表示感谢,他们在我学习的过程中,都积极的提供了很多帮助,无论是专业知识,还是实践操作技能,也能够让我在论文写作中,遇到的一些难题迎刃而解。
最后,对阅读和评审本论文的各位老师表示衷心的感谢!