私信获取源码+原文
目 录
根据我日常的生活中经验,加以结合对我大学的宿舍管理人员的了解以及对同宿舍同学们的调研,更多的采用实体的纸张为管理工具的账本来记录,类似这样的账本化的工作的模式存在以下的弊端不利于管理人员查询宿舍管理的信息。相对于现在人们习惯的用电脑百度一下,瞬间查询出我们想要的内容,一页页的去翻阅历史宿舍信息记录本子来查询宿舍管理信息实在是过于的繁琐,如果时间一长,必将会产生大量文件以及数据,这对于管理人员查询是会带来很大的困难。不便于学生的个人信息的及时的更新。基于我们学校宿舍楼的实际管理,若一位同学的信息需要修改,必须去学校的宿舍管理人员那里进行确认以及修改,现在很多的情况会造成学生信息的延迟更新,不及时更新,甚者,当需要修改资料的学生很多的时候,将会给学校宿舍管理人员带来超级大的工作内容。很容易就造成管理人员对宿舍管理信息的疏漏。如果宿舍的管理者需要发相关的通知以及公告的时候,目前的方式是只能在宿舍楼下小黑板上,但是这在很多的情况下往往会被学生们所忽略。还有比如寝室卫生状况,目前学生只能知道我们自己宿舍宿管给我们打的分数,并不能了解到其他的寝室如何,导致我们也无法进行比较和以及改进。
学生宿舍是大学生学习,生活,休息的重要场所,使用管理信息系统来进行大学宿舍的管理工作无疑将提高宿舍管理工作的效率和保证信息的准确性。随着全世界经济的开苏发展,计算机编程技术进入了快速发展的时期,同时计算机软件也在飞速的更新换代,随着高校的快速发展,传统的学校宿舍管理系统已经无法满足现在信息化的管理,传统的线下管理的方式不仅效率低下,还容易错记以及漏记,导致宿舍的管理混乱,因此需要研发一套现代化的学校宿舍管理系统来解决学校宿舍的现代化管理需求。学生宿舍信息管理系统也就应运而生。
学生宿舍管理系统采用了Spring boot框架、使用了MySQL作为数据库管理系统。Springboot框架能够很好的降低开发的难度为网站开发提供便捷。利用tomcat作为服务发布。基于Spring boot学生宿舍管理系统根据业务的需要设计了三种不同的用角色包含三个角色,系统管理员、学生、宿舍管理员三种角色的用户登录功能、系统管理员、学生、宿舍管理员三种角色的用户退出功能、首页、管理员列表、公告管理、学院管理、楼栋管理、宿舍管理、学生管理、保修管理、宿舍调整、缺勤管理、卫生记录、奖惩管理、加强教育名单、水电管理、来访管理等模块。通过这些模块的功能最终实现一个便捷高效的学生宿舍管理系统。
Java开发语言是一种面向对象的编程语言。它吸收了C++语言的优点,抛弃了C++难以理解的多重继承概念,抛弃了指针。因此,java开发语言有强大的功能和良好的易用性。 Java语言是静态面向对象编程语言的代表,它完美地体现了面向对象编程的优点,允许程序员用面向对象的思维进行复杂的编程,提高了程序员的工作效率。Java具有简单、面向对象、分布式、健壮、安全、平台无关和可移植、多线程、动态等优点。 同时,Java可以编写各种应用程序、web应用程序和一些分布式嵌入式系统程序。
JQuery框架是一个快速、简洁的JavaScript语言的框架,是一款非常优秀的前端框架,它降低了前端的开发工作量,封装了JavaScript常用的各类组件,包括获取页面的值、页面的正则校验、页面的弹窗效果、post、get请求等等,它的出现让前端的开发更加简洁、降低前端代码量、是前端的代码更加简洁,更容易维护,实现一个一个动态的前端页面效果。
Bootstrap 是现阶段比较流行的一款开源的前端框架,它的内部集成了前端的HTML、CSS、Javascript等前端语言。他的主要目的是为了节约前端开发人员的入门成本,即便自己不是特别擅长前端开发,通过它的拖拽的能力也能够在较短的时间内开发一个前端页面,bootstrap框架预设了许多的组件,比如输入框、点击按钮、弹出框、列表组件、模块组件等等,使用者不需要具备太多前端开发技能即可通过简单的拖拽实现网站的开发,降低开发成本。
JQuery框架是一个快速、简洁的JavaScript语言的框架,是一款非常优秀的前端框架,它降低了前端的开发工作量,封装了JavaScript常用的各类组件,包括获取页面的值、页面的正则校验、页面的弹窗效果、post、get请求等等,它的出现让前端的开发更加简洁、降低前端代码量、是前端的代码更加简洁,更容易维护,实现一个一个动态的前端页面效果。
Java SSM框架即指Spring+Spring boot+MyBatis的简称,框架集由Spring、MyBatis两个开源框架整合而成(Spring boot是Spring中的部分内容),Spring boot是一个叫pivot公司研发出来的一个新的框架。简化了spring框架应用过程中的各种复杂配置。框架采用了默认配置的方式去加载基础的配置文件,开发人员不需要在搭建框架的初期做太多的配置,可以做到拿来即用,降低开发人员的时间成本,以及框架搭建的难度,提高开发的效率。 Spring boot可以成为蓬勃发展的互联网发展领域的先驱。在网站项目的开发过程中,网站的响应效率是十分的重要的,用户通过链接访问我们的网站,网站向后端服务发出请求,后端服务连接数据库,根据请求指令处理相关的数据,然后根据业务需求处理相关的逻辑流程,处理完毕将数据返回给浏览器,反馈给用户。在这整个过程中,用户访问的页面属于试图层面、处理业务逻辑数据控制层面、请求数据属于数据模型层面,这种分为不同层面的模式我们称为MVC模式。主要内容如下:视图层:负责数据处理数据,整理数据的格式,数据的样式最终按照一定的格式展现给用户进行浏览以及相关的操作。控制层:接收用户提交的是数据,然后按照一定的逻辑进行相应的操作,然后把数据交给下一层。数据库层:按照上一层传输过来的逻辑进行数据操作,包括数据的删除、数据的修改、数据的搜索、数据的添加等等数据层面的操作,操作完将指令返回给上一层。随需而变过去, Spring引导框架不能替代Spring框架。它是一个单独的开发框架,可以改进所有开发人员。 它包含许多第三方软件库,可以在Spring boot中不进行配置就立即使用,从而消除了spring繁琐的配置文件。 一般来说,Spring boot只需要开发人员花一点时间来启动项目。2.5.2快速实施通过lbmd引擎,应用系统的开发变得固定,形成了一种新的开发模式:使用leap工具构建应用系统,或使用leap运行应用系统,从而在减少资金和工作量的前提下,达到快速构建大型复杂项目的目的。leap提供的“模型驱动”可以灵活部署,只需少量代码即可完成大型项目,这大大减少了Java程序员的工作量,降低了出现bug的风险。Spring boot采用SOA框架来简化开发。同时,它还可以使用二进制开发机制完成SDK。这也是为什么许多开发者喜欢Spring boot。
经济可行性:学生宿舍管理系统,利用免费的MySQL作为自己的数据存储的软件,个人电脑作为服务器,综上所属本项目在经济上是可行的。
技术可行性:学生宿舍管理系统是利用Java语言开发的,HTML、javascript等语言作为前端语言,以上语言都有成熟的框架,这些框架让编码没有那么难,所以,基于Spring boot学生宿舍管理系统系统在技术上是可行的。
操作可行性:学生宿舍管理系统采用传统的系统操作形式,通过浏览器打开本系统,各项功能按照使用前后顺利平铺在左侧菜单栏,符合用户的操作习惯,所以基于Spring boot学生宿舍管理系统系统在操作上是可行的。
法律可行性:学生宿舍管理系统仅用作毕业设计,不会对外开放,不会存在法律风险。
系统管理员:登录、退出、系统管理员、学生、宿舍管理员三种角色的用户退出功能、首页、管理员列表、公告管理、学院管理、楼栋管理、宿舍管理、学生管理、保修管理、宿舍调整、缺勤管理、卫生记录、奖惩管理、加强教育名单、水电管理、来访管理等功能;
宿舍管理员:登录、退出、楼栋管理、宿舍管理、学生管理、保修管理、宿舍调整、缺勤管理、卫生记录、奖惩管理、加强教育名单、水电管理、来访管理等功能组成;
学生:登录、退出、保修、宿舍调整、缺勤、卫生记录、奖惩管理、加强教育名单、水电管理等功能组成具体如表3.1所示。
| 功能编号 | 功能名称 | 功能描述 | 优先级 |
| 1 | 登录 | 使用之前需要先登录。 | 高 |
| 2 | 退出 | 使用完退出登录 | 高 |
| 3 | 首页 | 用户信息、新闻展示 | 高 |
| 4 | 管理员列表 | 管理员/宿舍管理员姓名、管理员/宿舍管理员账号、管理员/宿舍管理员密码、管理员/宿舍管理员角色、管理员/宿舍管理员手机号、管理员/宿舍管理员性别、管理员/宿舍管理员民族、管理员/宿舍管理员地址等信息的删除、修改、新增、查询功能 | 中 |
| 5 | 公告管理 | 公告标题、公告内容等信息的删除、修改、新增、查询功能 | 高 |
| 6 | 学院管理 | 学院编号、学院名称、学院简介等信息的删除、修改、新增、查询功能 | 高 |
| 7 | 楼栋管理 | 楼栋编号、学院编号、类型、房间总数、床位总数等信息的删除、修改、新增、查询功能 | 中 |
| 8 | 宿舍管理 | 宿舍编号、所属楼栋、所属学院、床位余量等信息的删除、修改、新增、查询功能 | 高 |
| 9 | 学生管理 | 学生姓名、学生账号、学生密码、学生角色、学生手机号、学生性别、学生民族、学生地址、学院、专业、楼栋、宿舍号、床位号等信息的删除、修改、新增、查询功能 | 高 |
| 10 | 保修管理 | 申请人、楼栋号、宿舍号、申报理由、申请调整宿舍、处理状态等信息的删除、修改、新增、查询功能 | 高 |
| 11 | 缺勤管理 | 缺勤人、楼栋号、宿舍号、缺勤理由等信息的删除、修改、新增、查询功能 | 高 |
| 12 | 卫生记录 | 楼栋编号、宿舍编号等信息的删除、修改、新增、查询功能 | 高 |
| 13 | 奖惩管理 | 姓名、学号、楼栋号、宿舍号、奖惩类型、分数等信息的删除、修改、新增、查询功能 | 高 |
| 14 | 加强教育名单 | 加强教育名单等信息的删除、修改、新增、查询功能 | 高 |
| 15 | 水电管理 | 楼栋号、宿舍号、类型、缴费金额、余量等信息的删除、修改、新增、查询功能 | 高 |
| 16 | 来访管理 | :楼栋号、姓名、访问对象、访问原因等信息的删除、修改、新增、查询功能 | 高 |
访问时效:本基于Spring boot学生宿舍管理系统能够及时的做出访问显示,让用户能够无感知得刷新,保证整个系统的响应时效,及时的做出用户的操作响应。
适应性:本基于Spring boot学生宿舍管理系统要能适应各类的浏览器以及操作系统,有很好的适应性,不需要要求很高的电脑就能够使用。
由于本系统未涉及复杂的算法计算,为了能够利用最节约的成本以及简洁的代码达到最佳的效果,经过调研,计划采用Java语言来开发,具体的软硬件环境要求如下。如表3.2所示。
表3.2 运行环境需求配置表
| 类别 | 名称 | 版本 | 语种 |
| 操作系统 | Windows | Windows10 | 简体中文 |
| 硬件环境 | Core处理器 | i7 | 简体中文 |
| 数据库平台 | MySQL | 5.7 | 简体中文 |
| Java环境 | JDK | 11 | 简体中文 |
| 浏览器 | 谷歌浏览器 | 80 | 简体中文 |
| 服务器应用平台 | Tomcat | 8.5 | 英文 |
基于Spring boot学生宿舍管理系统是使用JavaWeb技术开发的使用 IDEA作为开发工具,Mysql作为数据库,系统主要分为管理员、宿舍管理员、学生三种角色,系统的总体结构设计如图4-1所示。

图4-1 系统总体结构图
基于Spring boot学生宿舍管理系统是使用JAVA的SSM 框架基础上开发的,使用 IDEA作为开发工具,Mysql作为数据库,系统主要分为管理员、宿舍管理员、学生三种角色,系统的总体结构设计如图 4-1 所示。
管理员、学生、宿舍管理员打开谷歌浏览器,输入宿舍系统的地址,输入账号和密码,点击登录按钮进行登录的操作,成功或者失败都会有相应的提示信息。管理员登录流程如图4-2所示。

图4-2 登录流程图
公告、学院宿舍、学生等宿舍内容添加流程,此模块主要用来系统数据的添加,用户进入系统,打开对应的功能模块。管理员数据添加流程如图4-3所示。

图4-3 添加流程图
公告、学院宿舍、学生等宿舍内容修改流程,此模块主要用来系统数据的修改。管理员数据修改流程如图4-4所示。

图4-4 修改流程图
E-R图主要用来描述整个系统各个模块的关联情况具体如图4-5所示。

图4-5 数据库E-R图
本系统主要涉及13个表:即信息表、学院表、楼栋表、宿舍表、管理员、学生表、报修、宿舍调整、缺寝记录、卫生记录、奖惩、水电、来访。
信息表包括了标题内容等信息,具体的数据结构如下表4-1所示。
表4-1 信息表
| 字段 | 类型 | 描述 |
| title | varchar | 学生宿舍的标题 |
| content | varchar | 学生宿舍的内容 |
| createtime | varchar | 学生宿舍的发布时间 |
学院表包括了学院的编号等信息,具体的数据结构如下图4-2所示。
表4-2 学院表
| 字段 | 类型 | 描述 |
| xynum | varchar | 学生宿舍的学院编号 |
| xyname | varchar | 学生宿舍的学院名称 |
| xyjj | varchar | 学生学院的简介 |
楼栋表主要包括楼栋编号等基本信息,具体的数据结构如下图4-3所示。
表4-3 楼栋表
| 字段 | 类型 | 描述 |
| ldnum | varchar | 学生宿舍的楼栋编号 |
| xynum | varchar | 学生宿舍的所属学院 |
| type | varchar | 学生宿舍的所属楼栋 |
| roomnum | varchar | 学生宿舍的房间数量 |
| bednum | varchar | 学生宿舍的床位数量 |
宿舍表包括了宿舍编号等信息,具体的数据结构如下图4-4所示。
表4-4 宿舍表
| 字段 | 类型 | 描述 |
| roomnum | varchar | 学生宿舍的宿舍编号 |
| xynum | varchar | 学生宿舍的所属学院 |
| ldnum | varchar | 学生宿舍的所属楼栋 |
| bedyl | varchar | 学生宿舍的床位余量 |
管理员表包括了姓名编号等信息,具体的数据结构如下图4-5所示。
表4-5 管理员表
| 字段 | 类型 | 描述 |
| name | varchar | 管理员的姓名 |
| agntnum | varchar | 管理员的编号 |
| password | varchar | 管理员的密码 |
| mobile | varchar | 管理员的联系方式 |
| sex | varchar | 管理员的性别 |
| nationnal | varchar | 管理员的民族 |
| address | varchar | 管理员的籍贯 |
| type | varchar | 管理员的类型 |
学生表主要包括了姓名编号等基本信息,具体的数据结构如下图4-6所示。
表4-6 学生表
| 字段 | 类型 | 描述 |
| name | varchar | 学生的姓名 |
| stuno | varchar | 学生的编号 |
| password | varchar | 学生的密码 |
| mobile | varchar | 学生的联系方式 |
| sex | varchar | 学生的性别 |
| nationnal | varchar | 学生的民族 |
| address | varchar | 学生的籍贯 |
| xynum | varchar | 学生的学院 |
| zhuanye | varchar | 学生的专业 |
| ldnum | varchar | 学生宿舍的楼栋编号 |
| roomnum | varchar | 房间号 |
| cwnum | varchar | 床位编码 |
| xf | varchar | 学分 |
报修表主要涵盖楼栋编号、报修等基本信息,具体的数据结构如下图4-7所示。
表4-7 报修表
| 字段 | 类型 | 描述 |
| ldnum | varchar | 学生宿舍的楼栋编号 |
| roomnum | varchar | 学生宿舍的宿舍编号 |
| stuno | varchar | 学生宿舍的申报人 |
| reason | varchar | 学生宿舍的申报原因 |
| status | varchar | 报修的状态进度 |
| createtime | varchar | 报修的申报时间 |
宿舍调整表主要用来存放宿舍调整记录的基本信息,具体的数据结构如下图4-8所示。
表4-8 宿舍调整表
| 字段 | 类型 | 描述 |
| ldnum | varchar | 学生宿舍的楼栋编号 |
| roomnums | varchar | 学生宿舍的宿舍编号 |
| stuno | varchar | 宿舍调整的申请人 |
| reason | varchar | 宿舍调整的申请原因 |
| createtime | varchar | 宿舍调整的申请时间 |
| roomnum | varchar | 申请调整的宿舍编号 |
| status | varchar | 宿舍调整的申请状态 |
缺寝记录表主要用来记录宿舍缺寝等基本信息,具体的数据结构如下图4-9所示。
表4-9 缺寝记录表
| 字段 | 类型 | 描述 |
| ldnum | varchar | 学生宿舍的楼栋编号 |
| roomnum | varchar | 学生宿舍的宿舍编号 |
| stuno | varchar | 学生宿舍的缺寝人 |
| reason | varchar | 学生宿舍的缺寝原因 |
| createtime | varchar | 学生宿舍的缺寝时间 |
卫生记录表主要用来记录宿舍卫生检查记录情况等基本信息,具体的数据结构如下图4-10所示。
表4-10 卫生记录表
| 字段 | 类型 | 描述 |
| ldnum | varchar | 学生宿舍的楼栋编号 |
| roomnum | varchar | 学生宿舍的宿舍编号 |
| createtime | varchar | 学生宿舍的检查时间 |
奖惩表主要用来记录宿舍奖惩记录等基本信息,具体的数据结构如下图4-11所示。
表4-11 奖惩表
| 字段 | 类型 | 描述 |
| name | varchar | 学生的姓名 |
| stuno | varchar | 学生的学号 |
| ldnum | varchar | 学生宿舍的楼栋号 |
| roomnum | varchar | 学生宿舍的宿舍号 |
| createtime | varchar | 学生宿舍的奖惩时间 |
| types | varchar | 学生宿舍的奖惩类型 |
| fs | varchar | 学生宿舍的分数 |
水电表主要用来记录宿舍水电用量存量等基本信息,具体的数据结构如下图4-12所示。
表4-12 水电表
| 字段 | 类型 | 描述 |
| ldnum | varchar | 学生宿舍的楼栋号 |
| roomnum | varchar | 学生宿舍的宿舍编号 |
| jftime | varchar | 学生宿舍的缴费时间 |
| types | varchar | 学生宿舍的缴费类型 |
| jfje | varchar | 学生宿舍的缴费金额 |
| yl | varchar | 学生宿舍的水电余量 |
来访记录表主要用来记录宿舍来访人员等基本信息,具体的数据结构如下图4-13所示。
表4-13 来访表
| 字段 | 类型 | 描述 |
| ldnum | varchar | 学生宿舍的楼栋号 |
| name | varchar | 来访学生宿舍的人员姓名 |
| createtime | varchar | 来访学生宿舍的人员访问时间 |
| stuno | varchar | 来访学生宿舍的人员访问对象 |
| reason | varchar | 来访学生宿舍的人员访问原因 |
用户登录:包括管理员、宿舍管理员、学生用户三种角色,打开浏览器输入地址进登录页面,分配的用户可以通过登录页面登录系统进行相关的操作,如下图5-1所示。

图5-1 系统登录界面效果图
管理员/宿舍管理员姓名、管理员/宿舍管理员账号、管理员/宿舍管理员密码、管理员/宿舍管理员角色、管理员/宿舍管理员手机号、管理员/宿舍管理员性别、管理员/宿舍管理员民族、管理员/宿舍管理员地址等信息的删除、修改、新增、查询功能如下图5-2所示。

图5-2 效果图
宿舍日常宿舍系统公告信息维护:管理员对宿舍日常通知公告的基础信息的操作,操作内容主要包括了内容的增加操作、内容的查询操作、内容的删除等等各种通知公告基础信息的操作,如下图5-3所示。

图5-3 效果图
学院管理:学院编号、学院名称、学院简介等容的增加操作、内容的查询操作、内容的删除等等各种班级基础信息的操作,如下图5-4所示。

图5-4 效果图
楼栋编号、学院编号、类型、房间总数、床位总数等信息的删除、修改、新增、查询功能,如下图5-5所示。

图5-5 效果图
姓名、学号、楼栋号、宿舍号、奖惩类型、分数等信息的删除、修改、新增、查询功能,如下图5-1所示。

图5-6 效果图
宿舍维护报修维护管理:管理员对宿舍维护报修维护信息进行内容管理,包括:数据添加、数据的删除、数据的修改、数据的查询等等操作行为,如下图5-1所示。

图5-7 效果图
学生晚归登记管理管理:管理员对学生学生晚归的基础信息的操作,操作内容主要包括了内容的增加操作、内容的查询操作、内容的删除等等各种学生晚归基础信息的操作,如下图5-1所示。

图5-8 效果图
宿舍得分信息浏览:管理员对评分信息进行内容管理,包括:数据添加、数据的删除、数据的修改、数据的查询等等操作行为,如下图5-1所示。

图5-9 效果图
由于本系统都是本人自己做的,测试可以算是白盒测试。也就是执行页面的每一个功能,包括各个模块的添加的操作,需要按照模块要求做10次左右的的添加操作,包括各个模块的查询的操作,需要按照模块要求做10次左右的的查询操作,包括各个模块的修改的操作,需要按照模块要求做10次左右的的修改操作,包括各个模块的删除的操作,需要按照模块要求做10次左右的的删除操作。
“基于Spring boot学生宿舍管理系统”从开发到结束共持续50天,测试功能点100个,执行测试用例300个,平均每个功能点执行10次测试用例,详细的测试点如图所示,具体操作表如下:
表6-1 操作表
| 缺陷跟踪管理 | |||||
| 编号 | 缺陷所在模块 | 缺陷类型 | 等级 | 修改日期 | 修改说明 |
| 1 | 管理员管理 | 数据 | 一般 | 20220525 | 已修复 |
| 2 | 登录 | 代码 | 一般 | 20220525 | 已修复 |
| 3 | 宿舍管理 | 功能 | 紧急 | 20220525 | 已修复 |
| 4 | 宿舍新增 | 代码 | 一般 | 20220525 | 已修复 |
| 5 | 学院新增 | 功能 | 紧急 | 20220525 | 已修复 |
| 6 | 学院修改 | 功能 | 中等 | 20220525 | 已修复 |
| 学生管理 | 功能 | 一般 | 20220525 | 已修复 | |
| 8 | 学生删除 | 代码 | 一般 | 20220525 | 已修复 |
| 9 | 卫生录入 | 功能 | 紧急 | 20220525 | 已修复 |
| 10 | 公告信息 | 功能 | 中等 | 20220525 | 已修复 |
| 11 | 公告删除 | 功能 | 一般 | 20220525 | 已修复 |
经过两个多月进行的努力,终于完成了《基于Spring boot学生宿舍管理系统》的设计。虽然没有在程序上达到最完美的状态,但在写论文的过程中受到了很大的启发。网站可以说是一个多栏目、多版面的有机结合整体。我在设计网站的过程中,深切地体会到了设计网站不仅需要和用户有机结合,还需要注重规划和执行。我明白网站的设计与实现只是踏出了第一个脚步,以后要做的是把我做出来的网站和实际情况相结合起来,继续验证,逐步调整。在以后的这个过程中我可以更加深对网页设计的了解并逐步充实自己。
通过这一次的经验,使我在程序设计中了解到了整个执行过程,并清楚的认识到了自己的不足之处。也清楚我需要主动去掌握一些新的编程语言,逐渐熟练自己的技术。应该把思想放开,去接受新的知识和技术,而不是被动的等技术来配合我的思想。在今后的学习中,我会尽力拓宽自己的技术层面和专业知识,当有需要做新的程序的时候,会主动思考,而不是闭眼空想,达到能在自己的手中实现所有的结果。
私信获取源码+原文