Java实现宿舍管理系统的设计与实现【附源码】

news2024/11/23 19:30:08

本科生毕业论文(设计)

宿舍管理系统的设计与实现

  1. 目 录 摘 要 I Abstract II 1 引言 1
    1.1 研究背景 1
    1.2 国内外研究现状 1
    1.3 研究目的与意义 1 2 开发工具和相关技术 2
    2.1 Eclipse 2
    2.2 MySQL 2
    2.3 Bootstrap 3
    2.4 Tomcat 3 3 系统分析 3
    3.1 可行性分析 3
    3.2 性能需求分析 3
    3.3 功能模块分析 3 4 系统设计 4
    4.1 系统体系结构设计 4
    4.2 系统功能模块设计 5
    4.2.1 系统管理员功能模块 5
    4.2.2 宿舍管理员功能模块 5
    4.2.3 学生功能模块 6
    4.3 数据库设计 6
    4.3.1 概念结构设计 7
    4.3.2 表/字段及表间关系设计 8 5 系统实现 10
    5.1 系统管理员功能模块 10
    5.2 宿舍管理员功能模块 20
    5.3 学生功能模块 22 6 系统功能测试 22 7 结语 24 参考文献 25 致 谢 26

摘 要

随着互联网和计算机在我国的快速发展和应用,计算机作为一种强大的信息处理工具,必然要在信息化建设的潮流中引入到学校宿舍的日常管理之中。传统的宿舍管理方式正面临着变革,要与时俱进就必须设计出一个操作简单,界面友好,功能丰富,运行稳定的学生宿舍管理系统,本系统的开发使用到的主要技术有JSP、JDBC、Servlet,前端界面使用Bootstrap及其中的插件来进行开发,系统是基于B/S架构的,用MySQL数据库来储存数据,使用Tomcat服务器调试程序,并且使用MVC框架来完成宿舍管理系统的设计和开发。系统主要实现了宿舍管理员管理、学生管理、宿舍楼管理、缺勤记录管理等功能。
关键词:宿舍管理系统;MySQL数据库;Bootstrap;JDBC

Abstract

With the rapid development of Internet and computer in our country, and application of the computer as a powerful tool for information processing, in the tide of information construction is bound to into the daily management of the school dormitory. The traditional dormitory management mode is facing reform. To keep pace with The Times, we must design a student dormitory management system with simple operation, friendly interface, rich functions and stable operation. The main technologies used in the development of this system are JSP, JDBC and Servlet, and Bootstrap and its plug-ins are used for front-end development. The System Based on B/S architecture, MySQL database is used to manage and store data, Tomcat is used as the Server, and the MVC framework is used to complete the research and development of dormitory management system. The system mainly realizes the dormitory administrator management, student management, dormitory building management, absence record management and other functions.
Key words: dormitory management system; SQL database; Bootstrap; JDBC

1 引言

1.1 研究背景

随着近些年来教育、经济的发展,大学生的数量也是与日俱增,其中绝大多数的大学生在学校学习期间会在学校宿舍楼里居住,这就给宿舍楼的管理和在宿舍楼内居住的学生的管理带来了不小的困难和麻烦。21世纪是信息化的时代,由于大学生的数量逐年递增,管理人员的工作量也会相应的逐年增大,传统的人工管理和纸质记录的形式已经过于落后于时代,这使得管理人员对宿舍的管理难度大大的增加了。这种管理形式已经不能适应时代的发展和科技的进步了,因为这种管理方式的效率非常的低,需要的人力物力财力也非常的多。
传统的宿舍管理方式正面临着变革,要与时俱进就必须要设计出一个操作简单,界面友好,功能丰富,运行稳定的学生宿舍管理系统。这不仅方便了宿舍管理人员的管理,还可以使学校管理学生的效率得到大幅的提高,也能使学校整体的管理工作更加地简单、方便。同时,这也将大大的减少学校的人力成本和金钱成本,让学校的整体的管理效率更上一层楼。

1.2 国内外研究现状

外国的高校在宿舍管理系统的开发方面和宿舍管理信息化研究方面是遥遥领先于国内的。外国的信息化管理建设已然步入世界前列,对于学生宿舍的信息化管理研究和宿舍管理系统的开发也是处于世界领先地位。由于网络技术及与计算机应用技术都已经十分成熟,因此发达国家都建立了他们自己的信息管理系统,其中就包括外国高校所使用的宿舍管理系统。外国高校使用合适的宿舍管理系统不仅为管理员节省了大量的时间,简化了繁琐的工作,还为在宿舍内居住的学生提供了极大的方便,可以说是一举多得。
在国内高校信息化建设的过程中,国内各高校一方面购买了各种硬件设备,搭建了各种网络设施;另一方面也开发了各种教学、办公软件,形成了一定规模的高校信息化建设体系。但是,国内各高校的宿舍管理系统参差不齐,有些高校的宿舍管理系统还在研发当中,有些高校的宿舍管理系统存在着系统简陋,功能不齐全等各种问题,与外国的高校相比存在着相当明显的差距。目前国内绝大多数高校在学生宿舍管理方面还没有完全实现信息化建设,大部分学校还停留在人工管理、纸质记录信息的阶段,这种落后的人工管理形式已经不再能够适应于时代的发展,因为这种人工管理、纸质记录信息方式的效率非常的低,浪费的资源也非常的多。在中国国内高校信息化建设的时代,这种传统的人工管理、纸质记录信息的方法必然被时代所抛弃,被以网络技术为基础的信息处理工具所取代。因此,尽快开发出一个适合中国国内高校使用的、能够对学生和学生所居住的宿舍进行管理的学生宿舍管理系统是非常有必要的。

1.3 研究目的与意义

计算机作为一种强大的信息处理工具,必然要在信息化建设的潮流中引入到学校宿舍的日常管理之中。这不仅会为管理员节省了大量的时间,简化了繁琐的工作,还为在宿舍内居住的学生提供了极大的方便,同时也将促进学校宿舍的全面信息化建设和快速的发展。
学生居住的宿舍楼是大学生生活,交友和休息的主要场所,通过使用高校宿舍管理系统来进行大学生信息和大学生宿舍的日常管理工作必定会提高宿舍管理人员的工作效率,简化原本繁琐的工作。目前,中国国内各高校的大部分管理工作都已经能够实现使用计算机来进行相关操作,也已经基本上实现了信息化建设,但却在高校学生宿舍的管理方面仍然使用着人工操作和纸质记录信息的方式。这种落后于时代的人工操作和纸质记录信息的方式,不仅浪费了大量的资源,而且管理各项信息的灵活性也比较差。在现如今的互联网时代,如果仍使用人工管理、纸质记录的方式,即浪费了社会资源,效率也将无法提高。而使用计算机这一信息处理利器来管理和记录宿舍和学生的信息,可以大大提高查询的速度和灵活性,节约大量的人力、物力和财力等资源,极大的方便宿舍管理人员的日常管理,简化了原本繁琐的日常管理工作。
要想实现高校学生宿舍管理的信息化建设,就必须要设计出一个操作简单,界面友好,功能丰富,运行稳定的学生宿舍管理系统。通过对系统进行简单的维护和更新,以及对信息的管理和查询等必需的功能,实现宿舍管理人员对于学生和学生宿舍的日常管理需求。

2 开发工具和相关技术

本系统的开发使用到的主要技术有JSP、JDBC、Servlet,前端使用Bootstrap及其中的插件来进行开发,系统是基于B/S架构的,采用MySQL数据库来储存数据,使用Tomcat服务器调试程序,并且使用MVC框架完成宿舍管理系统的开发。

2.1 Eclipse

Eclipse是一个开放源代码的JAVA程序编译器,被计算机业内程序开发者们公认为是最好的JAVA程序编译器之一。Eclipse本身也是由JAVA语言设计开发的,但是它不仅仅能够编译JAVA程序,在安装上相应的插件后也可以编译C、C++、PHP等编程语言[1]。Eclipse可以很好的帮助计算机业内程序开发人员完成代码编写,完成大量且又复杂繁琐的工作,大大提高了程序开发人员编写开发程序的效率。

2.2 MySQL

MySQL数据库查询的速度非常快,由于将数据存储在不同的表中,所以查询的灵活性也非常高,在各类数据库中表现优异,因此MySQL数据库被计算机业内程序开发者们广泛地应用在互联网上的各类应用软件当中[2]。即使是需要处理成千上万条数据,MySQL数据库也能够十分轻松的处理,所以MySQL数据库逐渐成为了计算机业内开发者们最为喜爱的关系型数据库之一。
##2.3 Bootstrap
Bootstrap是一个用于前端开发的开源工具包[3]。它是一个基于当前流行的前端开发技术的前端开发框架[4]。 Bootstrap自推出以来一直很受计算机业内程序开发者们的喜爱,并且一直是GitHub上流行的开源项目,计算机及其相关行业的一些移动开发人员为人所知的框架也依赖于Bootstrap源代码来优化性能。

2.4 Tomcat

Tomcat服务器通可以用来开发和调试JSP程序,由于其先进的技术、强大的性能和免费的使用,Tomcat已经成为常用的调试程序的服务器,因此受到计算机业内JAVA程序开发者的欢迎[5]。
#3 系统分析
要想实现高校学生宿舍管理的信息化建设,就必须要设计出一个操作简单,界面友好,功能丰富,运行稳定的高校学生宿舍管理系统。通过对系统进行简单的维护和更新,以及对信息的管理和查询等必需的功能,实现宿舍管理人员对于学生和学生宿舍的日常管理需求。宿舍管理系统使用计算机来管理和记录学生和学生宿舍的信息,可以大大提高查询的速度和灵活性,节约大量的资源,能够极大的方便宿舍管理人员的日常管理。

3.1 可行性分析

在经济方面,由于该宿舍管理系统是本人的毕业设计并且由本人独立设计开发完成,所以完全不需要支付任何费用。硬件方面也仅需要一台能够满足系统要求的电脑即可。
在技术方面,宿舍管理系统所使用到的相关技术已经十分成熟。宿舍管理系统的相关模块作了详细的分类,前端界面美观,使用方式简单,后端功能十分丰富,运行也十分稳定,很好的满足了用户使用宿舍管理系统时分类查看相关信息和使用相关功能的需求。

3.2 性能需求分析

宿舍管理系统需要能够稳定的运行,能够满足大量用户的同时访问,并且能够保障用户数据信息的安全。因此,宿舍管理系统在开发设计阶段使用MySQL8.0作为数据库保证数据的安全可靠。
宿舍管理系统需要设计合理,对操作能够做到快速响应,系统还应该具有可靠的安全性可,方便后期系统的部署与更新。需要具有友好的用户界面,易于学习,易于操作,对于用户的绝大部分需求可以通过直接点击菜单实现,符合用户的常规操作习惯。

3.3 功能模块分析

宿舍管理系统的模块主要分为三个模块,各个模块又分别对应着不同的功能。大致模块划分如图1所示:

图1 宿舍管理系统模块图
宿舍管理系统主要实现了登录、退出、修改密码、以及对各类用户的管理等功能,其中包括各种增加、删除、查询等基本操作,并且该宿舍管理系统设计要求具有包括足够的信息储存和检索能力[6]。在设计该宿舍管理系统时,需要站在用户的角度出发对问题进行的思考,以便于增强用户在使用过程中的舒适感。宿舍管理系统在实现上应该具有如下功能:
(1)系统必须要求用户输入正确的账号和密码才能够登录自己的账号,并且系统能够识别不同的用户身份,以实现不同的用户身份登录时具有不同的用户功能。
(2)所有的用户都应具有登陆、退出以及修改密码的功能。
(3)系统管理员实现的功能最多,包括对宿舍管理员基本信息的管理,以及对其管理哪一栋或几栋宿舍楼的权限进行修改。还包括对学生、学生宿舍楼以及学生缺勤信息的管理。
(4)宿舍管理员仅能够将学生添加到自己管理的宿舍楼内,和对自己管理的学生基本信息及其缺勤记录进行管理。
(5)学生功能模块只能够查询到自己的缺勤记录,为保护隐私不能查询到别人的缺勤记录。

4 系统设计

4.1 系统体系结构设计

宿舍管理系统的总体体系结构分为用户使用的前端应用程、后端的服务层以及用来管理数据的数据库层。宿舍管理系统的体系结构图如图2所示:
图2 宿舍管理系统体系结构图

4.2 系统功能模块设计

4.2.1 系统管理员功能模块

系统管理员实现的功能最多,包括对宿舍管理员的管理以及对其管理哪一栋或几栋宿舍楼的权限进行修改。还包括对学生基本信息、学生宿舍楼基本信息以及学生缺勤信息的管理。
系统管理员进入宿舍管理系统首页后,通过点击左侧任务栏来选择所要进行的操作。点击宿舍管理员管理可对宿舍管理员进行管理,包括修改其所管理的宿舍楼;点击学生管理可对学生进行管理;点击宿舍楼管理可对宿舍楼进行管理;点击缺勤信息管理可对学生缺勤信息管理;点击修改密码来对密码进行修改;点击退出系统退出到登录页面,其功能模块如图3所示:

图3 系统管理员功能模块图

4.2.2 宿舍管理员功能模块

宿舍管理员通过输入正确的账号密码进入宿舍管理系统首页后,通过点击左侧任务栏来选择所要进行的操作。点击学生管理可对在其所管理的宿舍楼内居住的学生进行相关管理;点击缺勤记录管理可对在其所管理的宿舍楼内居住的学生缺勤记录进行相关管理;若宿舍管理员用户想要修改密码可点击修改密码来对密码进行修改。在宿舍管理员执行完相关操作后可点击退出系统功能退出到登录页面,也可以直接关闭页面。其功能模块如图4所示:

图4 宿舍管理员功能模块图

4.2.3 学生功能模块

学生功能模块可以让学生查询到自己的缺勤记录,并且具有修改密码和安全退出系统的功能。学生通过输入正确的账号密码进入宿舍管理系统首页后,通过点击左侧任务栏来选择所要进行的操作。点击缺勤信息可查看自己的缺勤记录,点击修改密码可以修改其密码,退出时可点击退出系统退出至登陆界面。其功能模块如图5所示:

图5 学生功能模块图

4.3 数据库设计

数据库设计是指根据目标用户的需求和系统的模块划分来设计整个数据库结构并各类表的过程[7]。
在此次宿舍管理系统的毕业设计中,共设计了四张表,分别是用户表、宿舍楼表、宿舍楼和宿舍管理人员的对应关系表和缺勤记录表。

4.3.1 概念结构设计

从宿舍管理系统的需求分析可知,本系统存在学生实体、宿舍管理员实体、宿舍楼实体和缺勤信息实体。根据数据库的实体与各实体间关系的设计,可以得到宿舍管理系统中各个实体的E-R图以及实体间关系的E-R图。各实体间关系的E-R图如图6所示:

图6 宿舍管理系统总体E-R图
(1)用户实体包含了用户的基本信息,包括用户id,用户学号或账号、用户姓名、用户所居住或管理的宿舍楼等。学生实体E-R图如图7所示:

图7 用户实体属性图
(2)宿舍楼实体包括宿舍楼id、宿舍楼名称、宿舍楼的备注等。宿舍管理员实体E-R图如图8所示:

图8 宿舍楼实体属性图
(3)缺勤记录实体包含了缺勤学生的信息,包括学生的id、学生缺勤的日期以及备注等。缺勤信息实体E-R图如图9所示:

图9 缺勤信息实体属性图
4.3.2 表/字段及表间关系设计
(1)表1为宿舍管理系统的用户表,用来记录用户的基本信息,区分用户的身份,以便为不同的用户提供不同的用户功能。其中role_id用来表示用户的身份,0代表系统管理员,1代表宿舍管理员,2代表学生并使用id字段作为该用户表的主键。

表1 用户信息表
名 类型 长度 是否为null 注释 Key
id Varchar 255 N 用户ID P_K
name Varchar 255 N 用户姓名
password Varchar 255 N 用户密码
stu_code Varchar 255 N 用户账号
dorm_Code Varchar 255 N 寝室号
sex Varchar 255 N 用户性别
tel Varchar 255 N 用户电话
dormBuildid Varchar 255 N 楼栋ID
role_id Varchar 255 N 用户角色
create_user_id Varchar 255 N 创建人ID
disabled Varchar 255 N 是否使用
(2)表2为宿舍管理系统的宿舍楼表,用来记录宿舍楼的信息。其中使用id字段作为该宿舍楼信息表的主键。
表2 宿舍楼信息表
名 类型 长度 是否为null 注释 Key
id Varchar 255 N 宿舍楼ID P_K
name Varchar 255 N 宿舍楼名称
remark Varchar 255 N 宿舍楼备注
disabled Varchar 255 N 是否使用
(3)表3 为宿舍管理人员和宿舍楼之间的对应表,其中使用id字段作为该宿舍管理人员和宿舍楼之间的对应表的主键。
表3 宿舍管理人员与宿舍楼的对应表表
名 类型 长度 是否为null 注释 Key
id Varchar 255 N ID P_K
user_id Varchar 255 N 管理员ID
dormBuild_id Varchar 255 N 宿舍楼ID
(4)表4 为缺勤记录表,其中使用id字段作为缺勤记录表的主键。
表4 缺勤记录表
名 类型 长度 是否为null 注释 Key
id Varchar 255 N ID P_K
student_id Varchar 255 N 学生ID
date Varchar 255 N 缺勤日期
disabled Varchar 255 N 能否使用

5 系统实现
宿舍管理系统使用JAVA语言编写, 主要实现了三大功能模块,这三大功能模块既有相同的功能也有独有的功能。在数据库设计时,设计了用户表,其中不能为空值的role_id字段用来表示用户身份,并以此让系统辨别用户身份,其中0代表系统管理员,1代表宿舍管理员,2代表学生。
宿舍管理系统的前端模块设计主要使用Bootstrap及其中的插件来进行实现,其中完美实现了对各类用户的管理操作和对缺勤记录的管理操作等等。
部署成功后,用户可通过浏览器访问http://localhost:8080/dorm/来进入宿舍管理系统的登陆界面,在用户输入正确的账号密码后,系统会根据数据库中的role_id字段识别出用户的身份,并为其提供相应的功能。

5.1 系统管理员功能模块

用户可以通过浏览器访问http://localhost:8080/dorm/来进入宿舍管理系统的登陆界面,如图10所示:
图10 宿舍管理系统登录界面图
在这里插入图片描述

在用户输入自己的账号密码后,点击登录按钮,系统会根据代码字段中的findByStuCodeAndPass()方法来根据数据库中的数据来对用户所输入的账号密码进行判断,若判断账号密码错误,则在当前页面显示报错信息,如图11所示:
图11 宿舍管理系统登录失败界面图
若判断账号密码正确,系统会根据数据库中用户表中的role_id字段来判断用户身份,若role_id字段的值为0,则跳转到系统管理员功能页面。系统管理员的功能如图12所示:
图12 系统管理员登录成功的功能界面图

在这里插入图片描述

在这里插入图片描述

(1)系统管理员功能模块中的宿舍管理员管理功能是用来让系统管理员实现对宿舍管理员的一系列管理操作的,也可以选择通过姓名、性别、电话号码等关键字进行检索。
用户使用宿舍管理员管理功能时,点击宿舍管理员管理会从数据库中查询出所有的宿舍管理员并显示在页面中,也可以通过关键字在此页面中精确查询某一位宿舍管理员。如图13所示:
图13 宿舍管理员管理界面图
在宿舍管理员管理主页中点击添加按钮,可以实现添加宿舍管理员操作,可以为宿舍管理系统新增一位宿舍管理员,并选择其所要管理的楼栋,可以是一栋也可以是多栋。如图14所示:
图14 添加宿舍管理员界面图
在这里插入图片描述
在这里插入图片描述

在宿舍管理员管理主页中点击修改按钮,可以修改宿舍管理员管理的权限,修改时需要输入原始密码进行验证,以防被别人操作,修改管理员操作可以添加或减少当前管理员管理的楼栋。如图15所示:
图15修改宿舍管理员权限界面图
在宿舍管理员管理主页中点击删除按钮时可以执行删除操作,执行删除操作时会提示是否确认删除,点击确定后将取消该宿舍管理员的管理权限,删除功能采用逻辑实现,确定删除之后,删除按钮变为激活按钮,点击激活按钮可以激活该宿舍管理员并恢复其权限。如图16所示:
图16删除宿舍管理员时确认界面图
在这里插入图片描述

在这里插入图片描述

(2)系统管理员功能模块中的学生管理功能是用来让系统管理员实现增加学生、删除学生、修改学生基本信息、查询学生基本信息等一系列操作的,也可以选择通过选择宿舍楼或一些相关关键字等进行检索。当学生数据较多时,设置了分页管理。
用户使用学生管理功能时,点击学生管理会从数据库中查询出所有的学生并显示在页面中,也可以通过关键字在此页面中精确查询某一位学生,如图17所示:
在这里插入图片描述

图17学生管理界面图
在学生管理主页中点击添加按钮可以实现添加学生的功能,可以新增一个学生并添加新的学生的基本信息,包括学号、姓名、等基本信息。如图18所示:
在这里插入图片描述

图18 添加学生界面图

在学生管理主页中点击修改按钮会先显示出学生的基本信息,然后可以选择修改学生的哪些基本信息,其中包括学号、姓名、性别、联系电话、宿舍楼、寝室号等基本信息。如图19所示:
图19修改学生信息界面图
点击删除按钮,将删除该学生信息,删除功能采用逻辑实现,确定删除之后,删除按钮变为激活按钮,点击激活按钮可以激活该学生。如图20所示:
图20 删除学生界面图

在这里插入图片描述

(3)系统管理员功能模块中的宿舍楼管理功能可以对宿舍楼进行相关管理,包括名称、姓名、简介等基本信息,也可以通过搜索框搜索宿舍楼。
用户使用宿舍楼管理功能时,点击宿舍楼管理会从数据库中查询出所有的宿舍楼并显示在页面中,也可以通过关键字在此页面中精确查询某一位学生,如图21所示:
图21 宿舍楼管理界面图
在宿舍楼管理主页中点击添加按钮可以新增一个宿舍楼,需要填写宿舍楼的名称、备注。如图22所示:
图22 添加宿舍楼界面图
在这里插入图片描述

在宿舍楼管理主页中点击修改按钮,系统会从数据库中的dormbuild表中遍历出宿舍楼原来的信息,修改完成后点击确定按钮,数据库中的信息将更新成新的数据,如图23所示:
图23 修改宿舍楼界面图
在宿舍楼管理主页中点击删除按钮时会提示是否确认删除,点击确定后将删除该宿舍楼信息,删除功能采用逻辑实现,确定删除之后,删除按钮变为激活按钮,点击激活按钮可以激活该宿舍楼。如图24所示:
图24 删除宿舍楼界面图

在这里插入图片描述

(4)系统管理员功能模块中的缺勤记录功能可以增加、修改、删除、查询学生的缺勤记录,可以通过Bootstrap中的datetimepicker插件来添加或修改学生的缺勤时间。
在左侧任务栏中点击缺勤记录管理,系统会从数据库中的record表中查询出所有数据并显示在页面上,也可以通过时间或一些相关关键字精确查询某一天或某一个人的缺勤记录,如图25所示:
在这里插入图片描述

图25 通过选择缺勤时间段来查询缺勤记录界面图
在缺勤记录管理页面上点击添加按钮,可以输入学号并选择时间来添加一位同学的缺勤记录。如图26所示:
在这里插入图片描述

图26 添加缺勤时间界面图

在缺勤记录管理页面上点击修改按钮,系统会从数据库中的record表中遍历出此缺勤记录原来的信息,修改完成后点击确定按钮,数据库中的信息将更新成新的数据,如图27所示:
在这里插入图片描述

图27 修改缺勤记录界面图
在缺勤记录管理页面上点击删除按钮,点击删除按钮时会提示是否确认删除,点击确定后将删除该缺勤信息,删除功能采用逻辑实现,确定删除之后,删除按钮变为激活按钮,点击激活按钮可以激活该缺勤信息。如图28所示:
在这里插入图片描述

图28 删除缺勤记录界面图

(5)修改密码功能需要用户输入原密码已验证是否是本人操作,随后需要输入两次新密码以保证正确输入,如图29所示:
在这里插入图片描述

图29 修改密码界面图
(6)系统管理员功能模块的退出系统功能,点击之后,系统返回登陆界面。
5.2 宿舍管理员功能模块
在输入正确的账号密码后,系统会根据数据库中用户表中的role_id字段来判断用户身份,若role_id字段的值为1,则跳转到系统管理员功能页面。宿舍管理员只能对在其所管理的宿舍楼内居住的学生进行管理,管理缺勤信息时,也只能管理其所管理的学生的缺勤信息。如图30所示:
在这里插入图片描述

图30 宿舍管理员登录成功的功能界面图

宿舍管理员功能模块中的学生管理功能、缺勤记录管理功能与系统管理员的相关功能大致相同,但是宿舍管理员仅能对其所管理的宿舍楼内居住的学生进行管理、对其所管理的学生的缺勤记录进行管理。
(1)当点击学生管理要添加或修改学生信息时,宿舍楼选项仅能选择当前宿舍管理员所管理的宿舍楼,如图31所示:
在这里插入图片描述

图31 添加修改学生信息的界面图
(2)当添加或修改学生缺勤记录时,宿舍管理员也仅能添加或修改在其所管理的宿舍楼内居住的学生的缺勤记录,否则,会提示错误。如图32所示:
在这里插入图片描述

图32 添加或修改学生缺勤记录的界面图
(3)宿舍管理员功能模块中的修改功能与退出系统功能与系统管理员的相关功能相同,此处不再赘述。

5.3 学生功能模块

在输入正确的账号密码后,系统会根据数据库中用户表中的role_id字段来判断用户身份,若role_id字段的值为2,则跳转到学生功能页面。学生功能界面的功能包括查询自己的缺勤记录,修改密码以及退出系统,如图33所示:
在这里插入图片描述

图33 学生登录成功的功能界面图
(1)点击学生功能模块中的缺勤记录,此功能可以让学生查询到自己的缺勤记录,如图34所示:
在这里插入图片描述

图34 学生查询自己缺勤记录的界面图
(2)学生功能模块中的修改功能与退出系统功能与系统管理员的相关功能相同,此处不再赘述。

6 系统功能测试

系统在开发过程中会出现各种报错,也有各种不可预知的问题,为了解决这一问题,就必须进行软件测试[8]。因此,宿舍管理系统在正式部署应用前也应当进行系统功能的测试,其功能测试过程与结果如下表5所示:
表5 宿舍管理系统功能测试表
测试编号 功能模块名称 测试流程 预期结果 实际结果 结果
1 登录 输入系统管理员或宿舍管理员或学生的账号和密码后,点击登录按钮 系统将输入的账号密码与数据库中数据进行对比,若正确则跳转至主界面,否则提示账号或密码错误 输入正确账号密码后,系统跳转至主界面;输入错误密码,提示错误 成功
2 宿舍管理员管理 分别点击添加,修改和删除按钮,并填写或选择相关信息和权限;选择或输入关键字进行搜索 可以添加或修改宿舍管理员信息和权限,可以删除宿舍管理员,可以通过相关关键字进行查询 可以添加、修改、删除或查询管理员,相关信息填错会报错 成功
3 学生管理 分别点击添加,修改和删除按钮,并填写或选择相关信息;选择或输入关键字进行搜索 可以添加、修改或删除学生信息,可以通过相关关键字对学生进行查询 可以添加、修改、删除或查询学生,相关信息填错会报错 成功
4 宿舍楼管理 分别点击添加,修改和删除按钮,并填写或选择相关信息;选择关键字进行搜索 可以添加或修改宿舍楼信息,可以删除宿舍楼,可以通过相关关键字进行查询 可以添加、修改、删除或查询宿舍楼,相关信息填错会报 成功
5 缺勤记录管理 分别点击添加,修改和删除按钮;选择或输入关键字进行搜索 可以添加、修改或删除学生信息,可以通过相关关键字对学生缺勤信息进行查询 可以添加、修改、删除或查询缺勤信息 成功
6 修改密码 在左侧功能栏里点击修改密码,输入一次旧密码和两次新密码 在正确输入一次旧密码和两次新密码后,跳转至登录界面,输入新密码后可再次登录系统 旧密码输错,新密码不一致都会报错。正确输入后,跳转至登陆界面 成功
7 退出 在左侧功能栏里点击退出系统 用户退出登录,返回登录界面 用户退出登录,返回登录界面 成功
7 结语
本文主要介绍了设计与实现学生宿舍管理系统的原因、目的和意义。首先,本文简要的介绍了在互联网与计算机技术快速发展的今天,国内外高校信息化建设的基本情况,又深入介绍了国内外高校在宿舍管理方面信息化建设的国内外现状,并由此引出此次宿舍管理系统开发研究的目的与意义。其次,介绍了宿舍管理系统是如何部署实现的,主要包括各功能模块的实现。
系统主要从学生管理、宿舍楼管理,缺勤记录管理,宿舍管理人员管理等几个主要功能进行了实现。宿舍管理系统实现了对学生缺勤记录进行管理,满足了宿舍管理人员对学生和宿舍进行管理的日常需求。这不仅可以方便宿舍管理人员对学生信息和学生宿舍进行管理,还可以使学校管理学生的效率得到大幅的提高。

参考文献

[1] 户珊珊. 基于Android机顶盒的酒店客户端系统的设计与实现[D].河北工业大学,2015.
[2] 陆建平,张小龙,褚国海,许波,柴军辉,沈建民,陆娇娜,顾海云,张子健,陈济锋.基于互联网平台的安全阀约检系统研究与开发[J].化工装备技术,2019,40(04):10-13.DOI:10.16759/j. cnki.issn.1007-7251.2019.08.003.
[3] 王佳. 面向Web的人机交互模块生成器的研究与实现[D].北京邮电大学,2016.
[4] 刘文佳. 基于混合协同过滤的个性化电影推荐系统研究[D].武汉理工大学,2018.
[5] 杨菊梅. 校园学生宿舍管理系统的设计与实现[D].山东大学,2017.
[6] 冯晓雨. 基于SSH框架的Helpdesk管理系统的设计与应用[D].东华大学,2017.
[7] 李远谋. 钻井井史数据治理系统设计与实现[D].西安石油大学,2021. DOI:10.27400/d.cnki. gxasc.2021.000791.
[8] 陈湘瑾,于孔亮,祖子帅,修昂.基于数据库和Java的宿舍管理系统[J].科学技术创新,2021(09):96-97.
[9] 张璨. 学生宿舍管理系统的设计与实现[D].厦门大学,2014.
[10] 覃勇,尉成玉.基于B/S结构的高校宿舍管理系统的设计与实现[J].信息与电脑(理论版),2016(24):137-139.
[11] 冯晓春,陈艳.基于web开发的学生公寓管理系统设计与实现[J].科技创新与应用,2020(31):77-78.
[12] 何立彬. 云南开放大学学生宿舍管理系统的研究与分析[D].云南大学,2017.
[13] 刘钉材. 学生宿舍管理系统的设计与实现[D].电子科技大学,2012.
[14] 陈佳玲. 高校学生宿舍管理信息系统设计与实现[D].电子科技大学,2011.
[15] 罗艺荣. 学生宿舍管理系统的设计与实现[D].厦门大学,2013.
[16] 张璨. 学生宿舍管理系统的设计与实现[D].厦门大学,2014.
[17] 郭文梁. 软件测试方法概述[J]. 科技与企业, 2012, 000(016):125-125.
[18] Zhao Kai. Design and Analysis of Campus Dormitory Management System Based on Java[J]. The Frontiers of Society, Science and Technology,2020,2.0(17.0).
[19] Ye Hai Qin,Wang Yi Ke,Chen Ying,Liao Li. Design and Implementation of College Dormitory Management System[J]. International Journal of Computational and Engineering,2021,6(3).
[20] LINGFANG HUANG. Research on Dormitory Management System in Colleges and Universities[C]//.Proceedings of the 2017 International Conference on Arts and Design, Education and Social Sciences(ADESS 2017).2017:1047-1053.

致 谢

大学四年的生活已接近尾声,始于2018年秋,终于2022年夏,我的青春即将结束了。
首先,我要感谢我的父母和两位姐姐一直以来的陪伴和支持,在我遇到生活难题时积极帮助我解决困难,帮助我缓解压力,家人永远是我最坚强的后盾。
其次,我由衷地感谢我的论文指导老师李杨,感谢李老师在毕业设计和论文撰写过程中给我提供的帮助。
最后,我要感谢这大学四年以来相识并帮助过我的朋友们,你们的陪伴成就了我大学四年的快乐生活。感谢我的室友们,四年以来的朝夕相处会是我此生难以忘记的时光。大学四年的时光是我们真正迈向社会的过渡时期,衷心祝愿各位朋友前程似锦,所愿皆可达。

指导教师评语(主要评价论文的工作量、试验数据的可靠性、论文的主要内容与特点、写作水平等):

论文的工作量:

试验数据的可靠性:

论文的主要内容与特点、写作水平:

                        签  名:

                           年    月    日

答辩委员会评语及论文成绩(主要评价论文的性质、难度、质量、综合训练、答辩情况、不足等):

论文的性质、难度、质量:

学生的综合训练、答辩情况、不足等:

论文成绩:
主任委员签名:

                              年    月    日

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/479585.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java基础学习(11)

Java基础学习 一、集合进阶1.1 数据结构(树)1.1.1 二叉查找树1.1.2 二叉树的遍历 1.2 平衡二叉树树的演变 1.3 数据结构 ( 平衡二叉树 )左旋1.4 数据结构 ( 平衡二叉树 )右旋数据结构 (平衡二叉树)需要转的四种情况 1.5 红黑树添加节点规则 二、Set系列集…

基础算法(五):DFS、BFS与剪枝

前言 前面的基础算法笔记已经断更好久了,因为荔枝觉得还是得先学一下基础的数据结构知识之后才能更好的入门算法。在这篇文章中荔枝主要记录DFS和BFS的相关基础知识、答题的模板以及自己的一些浅薄理解,同样的也会涉及到相关的剪枝操作。 一、搜索算法概…

java基础学习-7

文章目录 异常小总结编译时异常和运行时异常小总结 异常在代码中的两个作用异常的方式JVM虚拟机默认处理异常的方式自己处理(捕获异常)灵魂四问抛出异常异常中的常见方法小总结小练习 自定义异常 File----路径File的概述和构造方法小总结 File的成员方法…

线性表之顺序表(C语言实现)

前言 🎈个人主页:🎈 :✨✨✨初阶牛✨✨✨ 🐻推荐专栏: 🍔🍟🌯 c语言初阶 🔑个人信条: 🌵知行合一 🍉本篇简介:>:讲解数据结构的入门知识,线性结构之顺序表. 金句分享:…

机器学习笔记 基于深度学习的边缘检测

一、Holistically-Nested Edge Detection 边缘检测是视觉工作中十分常用的技术,传统边缘检测已经包含了很多经典的诸如Canny、Robert等等,都是各有擅场,不过有一点问题,就是很多参数需要人工调试,所以深度学习研究人员提出了基于卷积神经网络的边缘检测算法。 即HED,该算…

uniapp拍照离线定位,获取图片信息,经纬度解析地址

✅作者简介: 我是痴心阿文,你们的学友哥,今天给大家分享uniapp拍照离线定位,获取图片信息,经纬度解析地址 📃个人主页:痴心阿文的博客_CSDN博客-Vue.js,数组方法,前端领域博主 🔥本文前言&#…

【数据结构】超详细之顺序表(利用C语言实现)

文章目录 前言一、顺序表是什么?二、顺序表的实现步骤 1.顺序表的初始化以及开辟空间2.实现顺序表的头插、尾插以及打印3.实现顺序表的头删、尾删以及打印4.实现顺序表的查找5.实现顺序表指定位置插入6.实现顺序表指定位置删除7.释放内存总结 前言 数据结构是一个程…

离散数学_九章:关系(3)

9.3 关系的表示 1、用集合表示关系2、用矩阵表示关系矩阵表示关系⭐集合上的关系矩阵 R 自反时 R 对称时 R 反对称时 ⭐确定关系合成的矩阵 3、用有向图表示关系有向图⭐从有向图中 确定关系具有的属性 自反性对称性反对称性传递性 本节及本章的剩余部分研究的所有关系均为二…

函数(详解)——C语言

Hello,友友们前段时间忙拖更了这么久,趁着五一假期好好卷上一波哈哈哈。好的,我们本期主要对C语言中的函数进行讲解。 1.什么是函数 在数学中也常常用到函数,但你对C语言中的函数有了解吗? 在C语言中函数是一段可重…

数据结构学习分享之单链表详解

数据结构第三课 1. 前言2. 链表的概念以及结构3. 链表的分类4.链表的实现4.1 初始化结构4.2 尾插函数4.3 尾删函数4.4 头插函数4.5 头删函数4.6 开辟新节点4.7 销毁链表 5. 单链表OJ题目6. 顺序表和链表的区别7. 总结 1. 前言 💓博主CSDN:杭电码农-NEO💓…

五年开发经验前端程序员,刚入职一个月就要离职,我来聊聊看法

最近有一个新来的同事,估计又要离职了吧。从他的工作经历来看,大概有5年的前端工作经验,但是头发看起来挺少的,不知道是工作加班导致的,看他的性格不太像是经常加班的。 他这个人就是我们公司人事面试的,虽…

操作系统——进程管理

0.关注博主有更多知识 操作系统入门知识合集 目录 0.关注博主有更多知识 4.1进程概念 4.1.1进程基本概念 思考题: 4.1.2进程状态 思考题: 4.1.3进程控制块PCB 4.2进程控制 思考题: 4.3线程 思考题: 4.4临界资源与临…

躺平减脂减重法补充篇——无需控制碳水摄入的有效方法,另推一种健康的运动和防止老年慢性病的方式...

本文此前已经连续发表了六篇相关文章,内容确实比较多,最近又做了一组实验,进食了大量的锅巴,看看是否会带来体重的增加,每天进食量都不少于200克锅巴,对,4两重,而且是在每天正常进食…

SAPUI5 之XML Views (视图) 笔记

文章目录 官网 Walkthrough学习-XML Views视图案例要求:我们把上面通过index.html body的展示放在XML中展示1.0.1 新增view文件夹1.0.2 在xml文件中新增一个Text 文本1.0.3 在index.js中实例化view视图1.0.4 执行刷新浏览器1.0.5 调试界面分析结果 官网 Walkthrough…

假期给朋友介绍如何学习java和找工作的建议?

Java学习 一、学习Java的建议1. 学习Java基础知识2. 学习Java框架3. 学习Java Web开发4. 学习Java数据库编程5. 学习Java工具6.学习Java中的多线程技术6. 练习编程 二、找工作的建议1. 准备好简历2. 寻找工作机会3. 准备面试4. 提高自己的技能5. 关注行业动态 学习Java和找工作…

第十九章 观察者模式

文章目录 前言普通方式解决问题CurrentConditions 显示当前天气情况WeatherData 管理第三方Clint 测试 一、观察者模式(Observer)原理完整代码SubjectObserverWeatherData implements SubjectCurrentConditions implements ObserverBaiduSite implements ObserverClint 前言 普…

《软件工程教程》(第2版) 主编:吴迪 马宏茹 丁万宁 第十章课后习题参考答案

第十章 面向对象设计 课后习题参考答案 一、单项选择题 (1)A (2)B (3)B (4)D (5)A (6)C(7)D &#xff0…

【学习心得】Python多版本控制

问题描述:本文主要解决Windows系统下的多个Python版本共存问题。 (一)安装不同版本Python 官方下载链接:Python Releases for Windows | Python.org 下载如图中所示的版本(64位Windows系统可执行安装包版本&#xff0…

赞!数字中国建设峰会上的金仓风采

4月30日,第六届数字中国建设成果展览会圆满落幕。人大金仓深度参与本届峰会,在会上发布产品新版本,展出国产数据库前沿的行业解决方案和创新应用成果,出席国资央企SaaS应用服务共享平台伙伴签约仪式,吸引众多用户、伙伴…

面试官:你知道 Spring lazy-init 懒加载的原理吗?

普通的bean的初始化是在容器启动初始化阶段执行的,而被lazy-init修饰的bean 则是在从容器里第一次进行context.getBean(“”)时进行触发。 Spring 启动的时候会把所有bean信息(包括XML和注解)解析转化成Spring能够识别的BeanDefinition并存到Hashmap里供下面的初始…