Bootstrap

SSM玉林师范学院宿舍管理系统-计算机毕业设计源码19633

玉林师范学院宿舍管理系统设计与实现

摘要:随着大学生人数的增加,宿舍管理成为高校管理中的重要问题。本论文旨在研究玉林师范学院宿舍管理系统,探讨其优势和不足,并提出改进建议。通过对相关文献的综述和实地调研,我们发现该系统在宿舍分配、卫生评分、失物招领、设施维护等方面存在一些问题。针对这些问题,我们提出了一些解决方案,包括引入智能化技术、加强宿舍安全意识教育、完善设施维护机制等。最后,我们总结了这些改进措施的可行性和实施效果,并展望了未来宿舍管理系统的发展方向。

系统采用了B/S结构,在此基础上,对各业务模块进行了界面交互,以MySQL为数据库,并选用IDEA进行系统设计。在实现功能的同时,为实现系统的升级和扩展,采用了ssm框架,用户通过PC机访问Web版本,实现对系统功能的访问和交互。系统管理模块主要负责对已有数据库进行维护、管理、添加、维护、删除、修改等。管理员负责维护系统的各项功能、数据的备份、恢复,保证数据的完整性和一致性;负责用户的管理与配置。最后对系统进行测试后,改善了程序逻辑和代码。同时确保该系统有很好的操作体验,实现了对于学校、学生的共同双赢。

关键词:学生宿舍管理;宿舍分配;ssm;java

Design and Implementation of Dormitory Management

System in Yulin Normal University

Abstract:With the increase in the number of college students, dormitory management has become an important issue in university management. This paper aims to study the dormitory management system of Yulin Normal University, explore its advantages and disadvantages, and propose improvement suggestions. Through a review of relevant literature and field research, we have found that the system has some problems in dormitory allocation, hygiene scoring, lost and found, and facility maintenance. We have proposed some solutions to address these issues, including introducing intelligent technology, strengthening dormitory safety awareness education, and improving facility maintenance mechanisms. Finally, we summarized the feasibility and implementation effects of these improvement measures, and looked forward to the future development direction of dormitory management systems.

The system adopts a B/S structure, and on this basis, interface interaction is carried out for each business module. MySQL is used as the database and IDEA is selected for system design. While implementing the functions, the SSM framework has been adopted to upgrade and expand the system. Users can access the web version through a PC to access and interact with the system functions. The system management module is mainly responsible for maintaining, managing, adding, maintaining, deleting, and modifying existing databases. The administrator is responsible for maintaining the various functions of the system, backing up and restoring data, and ensuring the integrity and consistency of data; Responsible for user management and configuration. After testing the system, the program logic and code were improved. At the same time, it ensures that the system has a good operating experience, achieving a win-win situation for both the school and students.

Keywords: student dormitory management; Dormitory allocation; SSM; Java

目  录

1. 引言

1.1 开发背景

1.2 开发意义

1.3 研究内容

2. 主要技术和工具介绍

2.1 Java语言

2.2 MySQL数据库

2.3 ssm框架介绍

3. 系统分析

3.1 可行性分析

3.1.1 经济可行性

3.1.2 技术可行性

3.1.3 操作可行性

3.2 需求分析

3.3 业务流程分析

3.4 数据流程分析

4. 系统设计

4.1 系统结构设计

4.2 功能模块设计

4.3 数据库设计

4.3.1 E-R图设计

4.3.2 表设计

5. 系统实现

5.1 登录模块的实现

5.2 住宿申请模块

5.3 意见反馈模块的实现

5.4 通知公告模块的实现

5.5 学生管理模块的实现

5.6 失物招领管理模块的实现

5.7 宿舍信息管理模块实现

6. 系统测试

6.1 测试目的

6.2 测试概述

6.3 单元测试

6.4 测试结果

7. 总结

致  谢

参考文献

1. 引言

1.1 开发背景

随着高校规模的不断扩大和学生数量的增加,宿舍管理成为一项重要的任务。玉林师范学院作为一所具有较大规模的高校,其学生宿舍数量众多,宿舍管理工作面临着诸多挑战。

首先,传统的手工管理方式存在一些问题。采用纸质登记、人工分配等方式容易出现信息混乱、效率低下的情况。同时,由于人工管理的局限性,很难及时掌握宿舍安全状况、设施维护情况等重要信息。

其次,学生对宿舍管理的要求也在不断提高。随着社会的发展和科技的进步,学生对宿舍环境、安全和便利性的要求越来越高。他们希望能够方便地查询宿舍分配情况、报修设施问题,并希望通过智能化技术提升宿舍管理的效率和质量。

因此,为了提高宿舍管理的效率和质量,玉林师范学院决定开发宿舍管理系统。该系统将应用信息技术和智能化技术,实现宿舍分配、安全管理、设施维护等方面的自动化和智能化,以满足学生对宿舍管理的需求,并提升学校宿舍管理工作的水平和效果。

通过开发宿舍管理系统,玉林师范学院旨在提高宿舍管理的效率和质量,优化学生宿舍环境,加强宿舍安全管理,提升学生的居住体验,为学生提供更好的学习和生活条件。

1.2 开发意义

玉林师范学院宿舍管理系统的研究现状是一个值得关注的话题。目前,国内外许多高校已经开始关注和研究宿舍管理系统的开发与应用。

在国内,一些知名高校已经成功开发了自己的宿舍管理系统,并取得了显著成效。例如,北京大学、清华大学等一流高校都建立了完善的宿舍管理系统,实现了信息化管理和智能化服务。这些系统不仅提供了在线申请入住、报修等功能,还可以通过手机APP进行操作,方便学生随时随地进行管理和查询。

在国际上,宿舍管理系统的研究也取得了一定的进展。美国、英国等发达国家的高校普遍采用了先进的宿舍管理系统,以提高管理效率和服务质量。例如,美国的一些大学利用物联网技术,将宿舍设备与系统连接起来,实现智能化的设备控制和故障监测。

此外,一些学术研究机构也对宿舍管理系统进行了深入研究。他们关注系统的功能设计、用户体验、数据安全等方面,致力于提出更好的解决方案和创新思路。这些研究成果为宿舍管理系统的发展提供了理论支持和实践指导。

然而,目前仍存在一些问题和挑战。例如,系统的安全性、数据隐私保护等方面需要进一步加强;系统的用户界面和操作方式是否符合学生的习惯也需要关注。因此,未来的研究可以从这些方面入手,进一步完善宿舍管理系统的功能和性能。

综上所述,玉林师范学院宿舍管理系统的研究现状已经取得了一定的成果,但仍有待进一步深入研究和改进。通过借鉴国内外的经验和成果,可以为玉林师范学院的宿舍管理系统开发提供有益的参考和指导。

1.3 研究内容

  1. 根据用户的身份,系统可以为其设定不同的登录权限,从而提供多样化的操作界面,以满足用户的需求。
  2. 连接数据库是系统的核心技术,它对于整个系统的运行至关重要。
  3. 为了确保数据的完整性与可靠性,我们需要确保所有的信息都是经过严格的验证,以便于任何人都可以访问、使用,同时也要求每个用户都要及时完成数据的备份,以确保信息的完整与可靠。
  4. 设计界面是非常重要的,它能够让用户感觉到亲切。
  5. 分析宿舍管理信息化现状
  6. 研究市面上类似系统的现状及问题点。
  7. 本研究旨在深入探讨系统平台的架构、构建、数据库管理、安全性和功能实现等方面的内容
  8. 研究如何利用多种IT来提升平台的性能,并确保其可靠性和安全性
  9. 进行系统详细功能设计并完成测试

2. 主要技术工具介绍

2.1 Java语言

Java语言在计算机的程序应用过程当中,属于非常重要的一个应用软件,因为它的性能比较高,而且能够应用在多重领域当中,因此该程序在计算机的软件程序应用当中的范围相对来说是比较广泛的。而从专业的技术角度来说,Java程序的应用的实用性也是非常强的,这是因为它与传统的C语言或C++相比没有太大的基本结构的变化,也就是说它的语法结构是相对单一,而且具有稳定的特性,还有更重要的一点是Java程序语言的基本参考对象就是C语言,所以他的程序编写并不是很复杂,而且还能够起到优化工作效率提升系统设计本身的基础功能的作用,因此他也就受到了非常广泛的程序员们的青睐[5]

在此次进行系统设计开发研究的过程当中,还发现Java程序语言之所以能够得到市场上更多用户的好评和青睐,其根本原因在于他能够具备各种语言的自身独特优点的展现,也就是说它的兼容性是常强的。因此,我们因此我们可以说在任何一个程序的开发过程当中,Java语言程序的应用是必不可少的,它他在程序员进行改动的时候,哪怕是一个程序字母的改动,都可以形成一种特定的程序,这是 Java程序,非常独特的另一个优点。不仅如此,Java源程序的可移植性也是非常大,而且它的安全系数很高,能够通过不同方式进行移植到其他程序当中,而且可以兼容不同程序的系统,在运行的过程当中,其安全系数也是非常强的,能够确保用户在使用网络的过程当中去确保网络的安全,而正是基于这样的可移植性,为程序员节约了很多的系统语言程序的开发设计的时间,这是非常难得的一种自有优势。

2.2 MySQL数据库

数据库是程序用来存储接收系统运行过程中生成的数据的保管场所。用户可以进行修改、增加、删除、提取等操作。数据库通常可以由用户以某种方式存储,并可以与其他用户共享。同时,在某些情况下可能存在一些冗余。同时,它属于应用程序和独立的应用程序。为了实现统一有效的管理,数据库管理系统诞生了,它为其提供了一系列基本功能,包括存储、拦截、安全保障、备份等。

市面上常见的数据库管理系统,根据使用的模型可以分为两类:

1.关系数据库

它的核心概念是关系模型。它利用传统数学中的集合和代数代数等相关技术,将实际世界中对象和对象之间的关联转换为有效的模型,从而有效地管理和分析数据库信息中的数据库。

为了使每个数据库能够相互集成,开放式数据库连接驱动程序已成为几乎所有数据库管理系统的标准。在关系数据库中,比较常见的有MySQL、Oracle等。

2.非关系数据库

它是一个统称,通常指与传统关系数据库,具有性质和功能上有本质区别的数据库。它与关系数据库之间的关系,最大的区别在于选择所使用的查询语言时,不采用传统关系数据库所使用的SQL。较为常用的非关联数据库有Bigtable、Cassandra、Mongodb以及CouchDB,也可以被视为一个特殊类别,而其他数据库则是键值数据库,如Tomcat Cassandra和Leveld。

2.3 ssm框架介绍

SSM架构是由Spring和MyBatis两大开源工具组合而成的(其中包含了SpringMVC的部分功能),通常被用于构建较为简单且对

数据库依赖程度较低的Web应用程序。

Spring

Spring就如同一个在项目中组装bean的庞大工厂,其安装文档能够设定利用特殊参数来调动实体类的构建方式进行对象化

。此外,它也被视为项目中的粘合剂。

Spring的主旨在于ioc(控制反转),也就是说,不再要求程式员去具体地`创建`某个对象,只是让spring框架来协助你执行

这些任务。

SpringMVC

在项目里,SpringMVC负责捕获和处理来自客户端的请求,其主要部分是DispatcherServlet,它充当着中间人或前端角色

,会根据HandlerMapping来寻找与之相匹配的Controller,而这个Controller正是实际需要对请求做出响应并执行相应操作的

部分。简而言之,SpringMVC就如同SSH架构中的Struts一样。

mybatis

mysql是针对JDBC的一种包装处理方式,使得数据库底层动作变得隐蔽化。所有mysql的行为都基于一个

SQLSessionFactory对象来开展。mysql会根据配置文件连接到各个实体的Mapper文件,这些Mapper文件定义了每一个实体类如

何对应数据库中的SQL指令。当需要和数据库互动的时候,我们从sqlSessionFactory获取出一个sqlSession,然后使用这个

sqlSession去运行SQL命令。

控制器接收网页的申请,然后自动调出服务层开始管理。逻辑层向持久层发出申请,并与数据库实现通信。最终,计算结

果会被返还给业务层。在此过程中,业务层将处理逻辑传递给控件,而控件则会使用视频来展示所得数据结果。

3. 系统分析

3.1 可行性分析

本文提出的系统将从多个角度,包括经济效益、技术优势和操作便捷性,进行综合考量,以确保其可行性。

3.1.1 经济可行性

因为使用了免费的工具和软件,开发本系统的成本极低,甚至可以忽略不计;此外,该系统还能够有效地提升管理员的隐私,最大限度地保护他们的信息安全,因此,从经济可行性方面来看,它是一个可行的选择 。

3.1.2 技术可行性

现在科学技术在不断进步,计算机软硬件的发展已经达到了可持续的水平。Java语言的出现,使得普通的电脑也具备了完成该项目的功能,而且其占用的内存也极其紧凑,这使得使用MySQL进行软件的编程与设计几乎不会出现任何挑战。

3.1.3 操作可行性

作为当今社会的管理者,他们拥有优秀的教育背景,并且能够熟练地运用电脑进行各种操作,因此,我想设计一个基于Java技术的学院宿舍管理系统,它的实施将会大大提升效率,并且可行性也得到了很好的保障。

通过多方面的分析,可以确定这个系统是具有实际开发的价值和可能性的。

3.2 需求分析

为了满足当前玉林师范学生宿舍管理的各方需求,我们建立了一个数字化+信息化的玉林师范学院宿舍管理系统。与管理员相对比,学生的操作显然更为简单,因此我们使用了一个用例图来说明系统的各个权限。

图1  管理员用例图

图2  学生用例图

图1  宿管用例图

该系统由学生管理、公告数据管理、宿舍管理等多个功能模块组成,每个模块都有其独特的需求。其中,管理员权限的级别最高,因此需求量也最大,下面将详细介绍每个权限对应的具体要求。

管理员对应的功能需求如下:

管理员是系统最高权限拥有者,可以对整个系统中的学生、公告、住宿等信息来进行统一的控制与管理。

管理员可以创建新的管理组织,增加新的管理者,同时还可以对管理者的个人信息进行编辑和删除。

管理员可以通过添加、编辑、查询等方式,迅速获得学生、宿管的详细信息,并将其展示在系统中,同时,用户也可以根据自己的偏好,通过关键字更加方便、快捷的搜索,轻松获取与之相关的学生、宿舍、以及各个与之相关的信息。

管理员可以通过学院宿舍管理系统提供的功能,快速添加、删除宿舍,并且可以根据需要,使用关键字进行搜索查询,从而更好地管理宿舍。

管理员可以通过该卫生评分管理模块来添加或删除、任何与卫生评分相关的信息,这些卫生信息、也将被显示在系统中,用户是可以通过输入与卫生评分信息相关字眼来查询这些信息。

管理员能够通过该模块来对失物招领进行增删改查,这些失物招领也将被记录于系统中,并且可以通过关键字搜索来查询。

管理者可以使用该寝室分配管理模块,将寝室分配信息展现出来,学生能够根据自己的信息,快速地输入关键词,实现对寝室分配的快速查询。

管理员可以通过该功能的模块来添加或删除任何与公告有联系的信息,公告信息也是一样会被记录在系统中,并且可以通过关键的词语搜索来获取这些信息。

学生可以在住宿申请模块中填写自己的住宿信息,系统会显示出来,用户可以通过输入关键词进行查询。管理员还可以审核或删除这些住宿请求。

学生可以在寝室报修模块中添加报修的信息,这些信息将显示在系统中,并可以通过输入关键字快速搜索,管理员可以对报修信息进行管控。

学生可以在意见反馈模块中添加自己的意见反馈,这些意见反馈将被记录在系统中,用户可以输入关键字来查找这些意见反馈,管理员可以回复或删除这些意见反馈。

3.3 业务流程分析

通过登录,学生、宿管或者管理人员需要提供自己的帐户名称、密码,并通过数字认证,ACK无误之后,才能访问系统及权限以内的功能,对此将实现各种应用及管理等功能。

系统的整体业务的流程、如下图3所示:                                                                                            

图3  系统业务流程图

3.4 数据流程分析

DFD,也称数据流图,是一种结构化系统分析方法,它是可以通过识别图形的形式从而展示系统的逻辑功能,从而更好的来理解系统中的数据流动情况,并且可以有效地解决复杂的问题,因此受到了开发者的广泛应用。

零层数据流程是一个复杂的系统架构,其中包含了登录和管理员功能管理、检查+搜索、维护等多个模块,其中登录模块负责存储:管理员的个人资料,比如账号、密码、权限等,而管理员功能管理模块则负责管理员的操作,例如用户的添加+用户的查询+用户删除等,而检索维护原理是根据想要查询信息,通过相应的关键字进行搜索。

学院宿舍管理系统系统的顶层数据流图如下图所示:

图4  顶层数据流图

系统数据流图中,学生的数据流程被细分为多个部分。

中层数据流图如下图所示:

5   中层数据流图

6   部分低层数据流图

4. 系统设计

4.1 系统结构设计

该系统旨在为用户提供一种便捷的界面,以便他们能够轻松地完成各种功能,包括但不限于:用户的增减、卫生评分、宿舍管理、寝室分配等。

系统的功能结构图如下图所示:      

7  系统功能结构图

4.2 功能模块设计

系统登录是一个重要的入口,它提供了一个简单的界面,用于管理员登录,并且可以输入管理员的名称、密码和验证码,以便系统能够快速识别出用户的身份,无论是管理员又或者是学生。

管理员可以对这个系统中的所有学生用户进行管控,包括添加新的管理员、删除已有的学生、更改学生的个人信息,还可以通过输入学生的名称或姓名来查找相应的学生,并将管理员列表导出到excel中。

所有用户必须拥有一个可以更改的登录密码,无论是管理员还是学生,一旦更改,就必须重新登录以确保安全。

学生在进入本系统时,需要完成对自身的基本信息的管理,包括但不限于更新其姓名、联系方式、手机号、身份证号码、银行账户密码、联系地址、联系方式等。

为了确保用户的账号安全,系统建议各个用户都是可以查看:个人的历史登录记录,包含登录IP、登录的时间、登录的地址等,以便及时发现和处理可能的恶意行为。

为了有效地防范黑客攻击,提升系统的安全性,系统的每位管理员都必须对自己的历史操作日志进行有效的管理,以便他们可以查看到自己添加的任何数据,并且可以清晰地展示出操作者、操作过程、操作时间等信息。

通过管理员的操作,学生可以轻松地获取自己的宿舍信息,包括卫生评分、失物招领等,而且管理员还可以根据需要对这些信息进行审核、更新或删除。

通过管理员的操作,学生可以轻松地获取和查看相关的公告数据,无论是新增还是删除,都可以轻松地完成。

管理员通过添加和删除卫生评分信息,学生就能够查看和管理自己所在的宿舍评分信息。通过这种方式,学生可以更好地了解和控制自己的卫生状况。

当管理员添加了寝室分配信息时,学生就可以查看这些信息。

当管理员添加新的宿舍时,学生就可以通过查询功能找到所需的宿舍,并且可以通过审核来确定是否需要更新或者删除这些宿舍。

当学生提交了住宿申请时,系统会自动检索并ACK这些申请。如果需要,系统会对其进行审批,并将其移除。

寝室报修管理:学生在填写寝室报修信息后,管理员后台就可以查询到学生填写的寝室报修,管理员选择其中某个学生提交的寝室报修,管理员对寝室报修的登记进行审核添加、或删除寝室报修。

意见反馈管理:学生提交意见反馈之后,管理员就可以看到此意见反馈,管理员点击某个意见反馈,可以查询意见反馈又或者回复意见反馈。

4.3 数据库设计

4.3.1 E-R图设计

根据系统各个实体的关系,得出系统的总体E-R图。

8  系统实体属性图

图9  寝室报修表实体属性图

图10  住宿申请管理实体属性图

图11  宿舍信息管理实体属性图

系统总体E-R图如下图所示:

12  系统总体ER

4.3.2 表设计

根据E-R模型,系统建立了以下逻辑数据结构,通过ER属性图可以得出需要很多个数据表,在此罗列几个重要的数据库表结构设计:

表access_token (登陆访问时长)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

token_id

int

10

0

N

Y

临时访问牌ID

2

token

varchar

64

0

Y

N

临时访问牌

3

info

text

65535

0

Y

N

4

maxage

int

10

0

N

N

2

最大寿命:默认2小时

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

7

user_id

int

10

0

N

N

0

用户编号:

表accommodation_application (住宿申请)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

accommodation_application_id

int

10

0

N

Y

住宿申请ID

2

student

int

10

0

Y

N

0

学生

3

name

varchar

64

0

Y

N

姓名

4

gender

varchar

64

0

Y

N

性别

5

department

varchar

64

0

Y

N

院系

6

check_in_time

date

10

0

Y

N

入住时间

7

reason_for_application

text

65535

0

Y

N

申请原因

8

examine_state

varchar

16

0

N

N

未审核

审核状态

9

recommend

int

10

0

N

N

0

智能推荐

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表auth (用户权限管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

auth_id

int

10

0

N

Y

授权ID:

2

user_group

varchar

64

0

Y

N

用户组:

3

mod_name

varchar

64

0

Y

N

模块名:

4

table_name

varchar

64

0

Y

N

表名:

5

page_title

varchar

255

0

Y

N

页面标题:

6

path

varchar

255

0

Y

N

路由路径:

7

position

varchar

32

0

Y

N

位置:

8

mode

varchar

32

0

N

N

_blank

跳转方式:

9

add

tinyint

3

0

N

N

1

是否可增加:

10

del

tinyint

3

0

N

N

1

是否可删除:

11

set

tinyint

3

0

N

N

1

是否可修改:

12

get

tinyint

3

0

N

N

1

是否可查看:

13

field_add

text

65535

0

Y

N

添加字段:

14

field_set

text

65535

0

Y

N

修改字段:

15

field_get

text

65535

0

Y

N

查询字段:

16

table_nav_name

varchar

500

0

Y

N

跨表导航名称:

17

table_nav

varchar

500

0

Y

N

跨表导航:

18

option

text

65535

0

Y

N

配置:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表bedroom_exchange (寝室调换)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

bedroom_exchange_id

int

10

0

N

Y

寝室调换ID

2

building

varchar

64

0

Y

N

楼栋

3

housemaster

int

10

0

Y

N

0

宿管

4

dormitory_number

varchar

64

0

Y

N

宿舍号

5

student

int

10

0

Y

N

0

学生

6

gender

varchar

64

0

Y

N

性别

7

bed_number

varchar

64

0

Y

N

床位号

8

changing_bedrooms

varchar

64

0

Y

N

调换寝室

9

reason_for_exchange

text

65535

0

Y

N

调换原因

10

examine_state

varchar

16

0

N

N

未审核

审核状态

11

examine_reply

varchar

16

0

Y

N

审核回复

12

recommend

int

10

0

N

N

0

智能推荐

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表dormitory_allocation (寝室分配)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

dormitory_allocation_id

int

10

0

N

Y

寝室分配ID

2

building

varchar

64

0

Y

N

楼栋

3

housemaster

int

10

0

Y

N

0

宿管

4

dormitory_number

varchar

64

0

Y

N

宿舍号

5

student

int

10

0

Y

N

0

学生

6

gender

varchar

64

0

Y

N

性别

7

bed_number

varchar

64

0

Y

N

床位号

8

recommend

int

10

0

N

N

0

智能推荐

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表dormitory_information (宿舍信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

dormitory_information_id

int

10

0

N

Y

宿舍信息ID

2

building

varchar

64

0

Y

N

楼栋

3

housemaster

int

10

0

Y

N

0

宿管

4

dormitory_number

varchar

64

0

Y

N

宿舍号

5

dormitory_type

varchar

64

0

Y

N

宿舍类型

6

state

varchar

64

0

Y

N

状态

7

number_of_beds

varchar

64

0

Y

N

床位数

8

vacant_beds

varchar

64

0

Y

N

空余床位

9

recommend

int

10

0

N

N

0

智能推荐

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表dormitory_repair_report (寝室报修)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

dormitory_repair_report_id

int

10

0

N

Y

寝室报修ID

2

building

varchar

64

0

Y

N

楼栋

3

housemaster

int

10

0

Y

N

0

宿管

4

dormitory_number

varchar

64

0

Y

N

宿舍号

5

student

int

10

0

Y

N

0

学生

6

bed_number

varchar

64

0

Y

N

床位号

7

repair_items

varchar

64

0

Y

N

报修物品

8

repair_description

text

65535

0

Y

N

报修描述

9

repair_status

varchar

64

0

Y

N

报修状态

10

recommend

int

10

0

N

N

0

智能推荐

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表feedback (意见反馈)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

feedback_id

int

10

0

N

Y

意见反馈ID

2

student_users

int

10

0

Y

N

0

学生用户

3

theme

varchar

64

0

Y

N

主题

4

related_pictures

varchar

255

0

Y

N

相关图片

5

feedback_content

text

65535

0

Y

N

反馈内容

6

examine_state

varchar

16

0

N

N

未审核

审核状态

7

examine_reply

varchar

16

0

Y

N

审核回复

8

recommend

int

10

0

N

N

0

智能推荐

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

hits_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

表housing_management_users (宿管用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

housing_management_users_id

int

10

0

N

Y

宿管用户ID

2

housing_management_worker_number

varchar

64

0

Y

N

宿管工号

3

name_of_accommodation_manager

varchar

64

0

Y

N

宿管姓名

4

examine_state

varchar

16

0

N

N

已通过

审核状态

5

recommend

int

10

0

N

N

0

智能推荐

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表hygiene_rating (卫生评分)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

hygiene_rating_id

int

10

0

N

Y

卫生评分ID

2

building

varchar

64

0

Y

N

楼栋

3

housemaster

int

10

0

Y

N

0

宿管

4

dormitory_number

varchar

64

0

Y

N

宿舍号

5

inspection_date

date

10

0

Y

N

检查日期

6

hygiene_rating

varchar

64

0

Y

N

卫生评分

7

safety_inspection

varchar

64

0

Y

N

安全检查

8

safety_warning

varchar

64

0

Y

N

安全预警

9

recommend

int

10

0

N

N

0

智能推荐

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表logistics_delivery (物流配送)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

logistics_delivery_id

int

10

0

N

Y

物流配送ID

2

order_number

varchar

64

0

Y

N

订单号

3

product_name

varchar

64

0

Y

N

商品名称

4

purchase_quantity

varchar

64

0

Y

N

购买数量

5

total_transaction_amount

double

11

2

Y

N

0.00

交易总额

6

the_date_of_issuance

date

10

0

Y

N

发货日期

7

delivery_number

varchar

30

0

Y

N

配送订单

8

ordinary_users

int

10

0

Y

N

0

普通用户

9

shipping_address

varchar

64

0

Y

N

收货地址

10

delivery_status

varchar

64

0

Y

N

配送状态

11

signing_status

varchar

64

0

Y

N

签收状态

12

recommend

int

10

0

N

N

0

智能推荐

13

contact_name

varchar

255

0

Y

N

联系人名字

14

merchant_id

int

10

0

Y

N

商家id

15

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

16

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表lost_and_found (失物招领)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

lost_and_found_id

int

10

0

N

Y

失物招领ID

2

item_name

varchar

64

0

Y

N

物品名称

3

pickup_time

datetime

19

0

Y

N

捡到时间

4

pick_location

varchar

64

0

Y

N

拾取地点

5

item_image

varchar

255

0

Y

N

物品图片

6

state

varchar

64

0

Y

N

状态

7

item_description

text

65535

0

Y

N

物品描述

8

recommend

int

10

0

N

N

0

智能推荐

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表notice_announcement (通知公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notice_announcement_id

int

10

0

N

Y

通知公告ID

2

title

varchar

64

0

Y

N

标题

3

publisher

varchar

64

0

Y

N

发布人

4

published_on

date

10

0

Y

N

发布时间

5

relevant_attachments

varchar

255

0

Y

N

相关附件

6

content

text

65535

0

Y

N

内容

7

recommend

int

10

0

N

N

0

智能推荐

8

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表student_users (学生用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

student_users_id

int

10

0

N

Y

学生用户ID

2

student_id

varchar

64

0

Y

N

学号

3

name

varchar

64

0

Y

N

姓名

4

gender

varchar

64

0

Y

N

性别

5

contact_information

varchar

64

0

Y

N

联系方式

6

department

varchar

64

0

Y

N

院系

7

examine_state

varchar

16

0

N

N

已通过

审核状态

8

recommend

int

10

0

N

N

0

智能推荐

9

user_id

int

10

0

N

N

0

用户ID

10

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

11

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表upload (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

upload_id

int

10

0

N

Y

上传ID

2

name

varchar

64

0

Y

N

文件名

3

path

varchar

255

0

Y

N

访问路径

4

file

varchar

255

0

Y

N

文件路径

5

display

varchar

255

0

Y

N

显示顺序

6

father_id

int

10

0

Y

N

0

父级ID

7

dir

varchar

255

0

Y

N

文件夹

8

type

varchar

32

0

Y

N

文件类型

表user (用户账户:用于保存用户登录信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_id

mediumint

8

0

N

Y

用户ID:[0,8388607]用户获取其他与用户相关的数据

2

state

smallint

5

0

N

N

1

账户状态:[0,10](1可用|2异常|3已冻结|4已注销)

3

user_group

varchar

32

0

Y

N

所在用户组:[0,32767]决定用户身份和权限

4

login_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

上次登录时间:

5

phone

varchar

11

0

Y

N

手机号码:[0,11]用户的手机号码,用于找回密码时或登录时

6

phone_state

smallint

5

0

N

N

0

手机认证:[0,1](0未认证|1审核中|2已认证)

7

username

varchar

16

0

N

N

用户名:[0,16]用户登录时所用的账户名称

8

nickname

varchar

16

0

Y

N

昵称:[0,16]

9

password

varchar

64

0

N

N

密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成

10

email

varchar

64

0

Y

N

邮箱:[0,64]用户的邮箱,用于找回密码时或登录时

11

email_state

smallint

5

0

N

N

0

邮箱认证:[0,1](0未认证|1审核中|2已认证)

12

avatar

varchar

255

0

Y

N

头像地址:[0,255]

13

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

表user_group (用户组:用于用户前端身份和鉴权)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

group_id

mediumint

8

0

N

Y

用户组ID:[0,8388607]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]

3

name

varchar

16

0

N

N

名称:[0,16]

4

description

varchar

255

0

Y

N

描述:[0,255]描述该用户组的特点或权限范围

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

register

smallint

5

0

Y

N

0

注册位置:

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5. 系统实现

5.1 登录模块的实现

学生,在登录界面中输入用户名+密码,然后选择相应的角色,点击“登录”按钮,系统会在用户数据库表中匹配学生的帐户,如果用户名+密码正确,则会登录到系统中每个用户的主管理界面,否则会提示相应的信息,如果是忘记了密码,请返回登录界面。

可以单击登录按钮下忘记的密码,然后按照提示检索密码。

学生登录流程图如下所示:

13  学生登录流程图

登录界面如下图所示: 

14  登录界面

5.2 住宿申请模块

当学生登录系统时,系统会通过SESSION来检测是否有学生登录,如果没有,就会提醒学生登录账户。然后,系统会将学生输入的信息存储在数据库表中,并通过sql进行查询。管理员在系统后台管理学生的住宿申请。

在线住宿申请流程图如下所示:

15住宿申请流程

住宿申请添加界面如下图所示:

16  住宿申请添加界面

5.3 意见反馈模块的实现

学生点击一下意见反馈就会进入到意见反馈详细页,填写意见反馈信息,提交意见反馈信息,成功意见反馈后,管理员可以管理学生的意见反馈信息,审核意见反馈信息并回复。

学生意见反馈流程图如下所示:

图17  学生意见反馈流程图

学生意见反馈界面如图所示:

18 学生意见反馈添加界面

5.4 通知公告模块的实现

管理员发布通知公告,系统显示通知公告,通知公告添加功能主要指对其一些基本信息的添加、删除和修改。

通知公告管理页面,如下图所示:

19 通知公告管理页面图

5.5 学生管理模块的实现

学生管理主要是对新学生的添加和旧学生的删除。新学生的添加主要是指添加学生名称并确定其密码;旧学生的删除也是从下拉菜单中找到对应的学生名称将其删除。不论是新学生添加还是旧学生的删除,这个权限只有管理员具有。

学生管理流程图如下所示:

20  学生管理流程图

学生管理界面如下图所示:

21  学生管理界面

5.6 失物招领管理模块的实现

管理员发布新的失物招领,系统显示失物招领,失物招领添加功能主要指对其一些基本信息的添加、删除和修改。

失物招领管理如下图所示:

22  失物招领添加管理

5.7 宿舍信息管理模块实现

管理员发布宿舍,系统显示宿舍,宿舍添加功能主要是指对其一些基本信息的添加、删除和修改。

宿舍管理页面,如下图所示:

23  宿舍管理页面图


6. 系统测试

6.1 测试目的

通过进行软件测试,我们可以有效地检查出软件中存在的问题,并且可以帮助我们更好地评估项目中可能存在的风险。此外,通过对测试数据进行及时分析,我们可以更好地控制并优化软件,以便满足最终用户对产品质量的期望。通过不断监测项目的实施情况,并对每一步的产出质量实施精确的管理。

基于学院宿舍管理系统,主要测试管理员登录模块、宿舍管理模块、学生信息管理模块、和退出模块系统等功能是否实现。

6.2 测试概述

系统测试有两种,一种是黑盒测试,另一种是白盒测试。一般来说,黑盒测试就是功能测试,也叫需求测试。在黑盒测试的过程中,我们并不知道它的开发原理,而只是作为一个用户对系统进行测试。我们主要依靠以前的测试经验来取一些临界值,然后通过测试用例进行测试,这是发现问题最快的方式。其次,利用测试用例找出一些具有代表性的数据对系统进行测试。黑盒测试过程中常用的测试工具有WinRunner和Autorunner;白盒测试称为结果测试,即逻辑驱动测试。在白盒测试的过程中,我们主要是按照系统开发的原则进行测试,主要是作为开发人员测试代码是否完成了其特定的功能,以及具体的路径是否正确。当然,这种测试方法费时费力,因为每个函数都有不止一条运行路径,通过测试程序中运行的路径,我们可以检测到开发的代码是否有错误,是否达到了预期。在白盒测试过程中,常用的测试工具有JContact、C++Test和CodeWizard。

6.3 单元测试

登录测试用例如下表所示

表6-1 登录测试用例

操作描述

数据

期望结果

实际结果

测试状态

选择管理员登录,输入用户姓名,按登陆按钮。

用户姓名:admin

密码为空

显示警告信息“请填写密码!

显示警告信息“请填写密码!

与期望结果相同

选择管理员登录,输入密码,按登陆按钮。

用户姓名为空,密码:123456

显示警告信息“请填写用户名”

显示警告信息“请填写用户名”

与期望结果相同

选择管理员登录,输入用户姓名和密码,按登陆按钮。

用户姓名:1234

密  码:1234

显示警告信息“该用户名不存在!

显示警告信息“该用户名不存在”

与期望结果相同

选择管理员登录,输入用户姓名和密码,按登陆按钮。

用户名:admin,密  码:admin

正确登入到后台页

正确登入到后台页

与期望结果相同

个人信息管理测试用例如下表所示。

表6-1 个人信息管理测试用例

操作描述

数据

期望结果

实际结果

测试状态

选择个人信息,清空用户名,按“保存”按钮。

用户姓名为空

显示警告信息“用户名不能为空!”

显示警告信息“用户名不能为空!

与期望结果相同

选择个人信息,清空邮箱,按“保存”按钮。

用户邮箱为空

显示警告信息“邮箱不能为空!”

显示警告信息“邮箱不能为空!”

与期望结果相同

选择个人信息,清空联系方式,按“保存”按钮。

用户联系方式为空

显示警告信息“联系方式不能为空!”

显示警告信息“联系方式是不能为空!”

与期望结果相同

选择个人信息,按“上传头像”按钮,上传头像文件大小超过1Mb。

头像文件大小超过1Mb

显示警告信息“图片大小不能超过1Mb!”

显示警告信息“图片大小不能超过1Mb!”

与期望结果相同

公告管理测试用例如下表所示。

表6-1 公告管理测试用例

操作描述

数据

期望结果

实际结果

测试状态

用户点击“公告发布”,填写相关数据后点击“确定”。

在必填项输入测试数据

提示“发布成功”

提示“发布成功”

与期望结果相同

用户选择公告点击“修改”后点击“确定”。

在必填项修改测试数据

提示“修改成功”

提示“修改成功”

与期望结果相同

宿舍信息管理测试用例如下表所示。

表6-1 宿舍信息管理测试用例

操作描述

数据

期望结果

实际结果

测试状态

用户点击“宿舍信息添加”,填写相关数据后点击“确定”。

在必填项输入测试数据

提示“添加成功”

提示“添加成功”

与期望结果相同

用户选择宿舍信息点击“修改”后点击“确定”。

在必填项修改测试数据

提示“修改成功”

提示“修改成功”

与期望结果相同

寝室报修管理测试用例如下表所示。

表6-1 寝室报修管理测试用例

操作描述

数据

期望结果

实际结果

测试状态

用户点击“寝室报修发布”,填写相关数据后点击“确定”。

在必填项输入测试数据

提示“发布成功”

提示“发布成功”

与期望结果相同

用户选择寝室报修点击“修改”后点击“确定”。

在必填项修改测试数据

提示“修改成功”

提示“修改成功”

与期望结果相同

6.4 测试结果

在测试每个功能的过程中,我们应该严格按照指定的测试计划逐步进行测试,不能急于实现,并且每个测试的结果都应该充分记录下来,最好的选择是自动化测试,这样可以更准确、更快地完成,而不是依赖手动测试,因为这样可以避免问题,它还可以防止疲劳和问题。进行测试时,必须保持高度专注,密切关注测试结果,并及时纠正任何异常情况;最后,在测试完成后,应该正确保存文档以备将来使用。经过测试可以发现,原来开发的系统是清晰的,只有对其进行细化,编程的过程才会变得更加顺利。只有有了良好的结构,后期的编程工作才能顺利完成,同时也可以大大降低时间和精力成本。

7. 总结

在开发本玉林师范学院宿舍管理系统之前我胸有成竹,觉得很简单,但在实际的开发中我发现了自身的很多问题,许多编程思想和方法都还没有掌握牢靠,比如Bootsatrp、Jquery、AJAX 、Spring、SpringMVC、mybeatis等许多Java Web开发技术,通过开发这个玉林师范学院宿舍管理系统我成长了很多,懂得了做什么事情都要脚踏实地,不能眼高手低,在本次玉林师范学院宿舍管理系统的开发中我逐渐掌握逐渐熟悉的技术。

本次玉林师范学院宿舍管理系统的开发中我还学会了例如良好的编程思想和完善的规划思想。在着手编程之前需要罗列出程序框架的大概,脑海中构建出程序的主题框架。做好这一步我们才能胸有成竹的经行开发项目当设计框架了熟于心之后,需要思考本次编程所需的主要知识点和技术点,并充分学习。如此一来项目的开发才能循序渐进、如丝般顺滑,长久以往就能养成良好的开发习惯一个程序好不好还要看出的bug多不多,如果在项目完成前做好bug的查验与预防可能发生的事故才能保证程序的稳定长久性运行。如果项目在完工后出现各种问题自己,那么在进入社会后,不仅会给公司团队带来麻烦和增加不必要的工作,还会导致客户流失,公司对自己的评价下降。

在本次项目中我也暴露了诸多问题。对于Java的编程知识有所欠缺,环境配置和算法上出现诸多问题,时常导致项目运行出错,或者目标的实现有问题。或者实现想法时算法未优化,使得代码冗长,程序运行不顺畅。

致  谢

眨眼之间,大学生活就要结束了。在本文的最后,我要感谢我和蔼可亲的导师团结有爱同学的帮助和鼓励。此刻,我找不到感谢之词可以用来表达我最深切的感激之情。首先,我要向我的导师表示衷心的感谢。在实习期间的我总是很忙,论文撰写期间也是停停改改,但是我的导师依然对我十分负责,时常会询问我毕业设计的进展情况,督促着我的论文进度。到目前为止,老师严谨的教学态度、课堂上的谈笑,以及对我学术文章细致认真的修改,仍然深深地印在我的脑海中,挥之不去。从导师身上我学习到很多知识,和经验,这样的知识及经验令我受益匪浅。也从导师身上看到了自己的不足,不论是在基础层面上还是在对待工作的态度上,都如同明镜一般照出了我的缺点我的不足

其次,我还要感谢我的父母,感谢你们多年来的默默支持,感谢你们的理解、信任和期待,这是我前进的动力。最后,我还要感谢在百忙之中参与论文评审和答辩的专家评委们。我想就这篇文章的不足之处征求一些有价值的建议。

祝老师们身体健康,一切顺利!

就我个人而言,我很清楚本科论文的结束只是人生的转折点之一,大学毕业也是人生的转折之一。

至于我个人在理论和写作方面的不足,我将在未来的学习和工作中有所改进。

参考文献

[1] 刘晓华,周慧贞.JSP应用开发详解[M].电子工业出版社,2013

[2] 芦晓红. 微信小程序的应用现状与展望[J]. 教学研究, 2018, 000(011):19-25.

[3] 微信公众平台技术文档[2018-11]

[6] 张靖. 应用于自动售货机的管理云平台实训项目的设计与实现[J]. 数码世界, 2018(6).

[5] 黄雄. 数字赣州地理信息公共服务平台设计与实现[D]. 2018.

[6] 王崇. 移动网上营业厅系统的设计与实现[D]. 2018.

[7] 陈志峰, 黄海军. Web数据库原理与应用[M]. 北京交通大学出版社, 2012.

[8] 孙月玲. 微信小程序的设计与开发[J]. 科技创新导报, 2018, 15(16):168-167+152.

[9] 代洪彬. 基于微信小程序的《计算机应用基础》微学习平台的设计与实现[D]. 2018.

[12] 段凯.基于MySQL数据库技术的新型物流管理系统的设计及应用[J].微型电脑应用,2018,36(12):126-128.

[11] 陈宇收.MySQL数据库备份方案研究[J].电脑编程技巧与维护,2018,(12):129-112,165.

[12] 袁震. GTD软件的设计与实现[D].

[13] 周琪峻 王英强 贾国强 姚颖奕 赵文. King Voice校园餐厅服务解决方案[J]. 电脑知识与技术, 2019(15):128-129.

[16] Klaus K.Obermeier.MySQL for the Internet of Things[J].Computing reviews, 2017, 58(6):336-336.

[15] STEVEN BUCZKOWSKI.Using MySQL for Load Balancing and Job Control under Slurm[J].Linux journal, 2015, (Aug. TN.256):88-90

[16] Lei Hao.Analysis of the Development of Android Mini Program[J].Journal of Physics: Conference Series.2018.

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~
 

;