摘 要
近些年来,随着科技的飞速发展,互联网的普及逐渐延伸到各行各业中,给人们生活带来了十分的便利,教室管理系统利用计算机网络实现信息化管理,使整个教室信息管理的发展和服务水平有显著提升。
本文拟采用Eclipse开发工具,JAVA语言,springboot框架进行开发,后台使用MySQL数据库进行信息管理,设计开发的教室管理系统。通过调研和分析,系统拥有管理员和学生用户、教师用户三个角色,主要具备注册登录、个人信息修改、课室信息、预约课室、课室签到、课室签退、失物招领、校园公告等功能模块。将纸质管理有效实现为在线管理,极大提高工作效率。
关键词:教室管理系统;JAVA语言;springboot框架;MySQL数据库;
Abstract
In recent years, with the rapid development of science and technology, the popularity of the Internet has gradually extended to all walks of life, bringing great convenience to people's lives. The classroom management system uses computer network to achieve information management, which significantly improves the development and service level of the entire classroom information management.
This paper intends to use Eclipse development tools, JAVA language, springboot framework for development, background use MySQL database for information management, design and development of classroom management system. Through investigation and analysis, the system has three roles: administrator, student user and teacher user, and mainly has function modules such as registration and login, personal information modification, classroom information, classroom reservation, classroom sign in, classroom sign out, lost property and found, campus announcement, etc. The effective realization of paper management to online management, greatly improve work efficiency.
Keywords: Classroom management system; JAVA language; springboot framework; MySQL database;
目 录
第一章 概述
1.1 研究背景
随着教育体系的不断扩大和学生人数的增加,如何高效地管理和分配教学资源成为了一个重要课题。教室作为最基本的教学资源之一,其管理效率直接影响到教学质量和资源利用率。现代教育强调信息化建设,教室管理系统作为信息化教育的一部分,可以实现教学资源的信息数字化,便于进行统一管理和调度不同类型的教室(如多媒体教室、智慧教室等)需要不同的管理方式和设备支持,教室管理系统可以帮助实现这一多样化管理的需求。在一个教育体系中,存在多种角色,如学生、教师、管理员等,他们对于教室使用的需求和管理权限不同。教室管理系统可以通过角色划分来满足不同用户的特定需求。随着计算机技术和网络技术的发展,基于Java编程语言和MySQL数据库的教室管理系统可以提供更加稳定和高效的服务,同时也能够支持更复杂的功能和更大的用户量。教室管理系统还需要考虑到数据的安全性和维护的便捷性,确保系统能够长期稳定运行,同时保护用户数据不被未授权访问。随着人工智能和大数据技术的发展,未来的教室管理系统可能会集成更多智能化的功能,如智能排课、智能监控等,以提高管理的智能化水平。
教室管理系统的研究背景可能包括了教育资源的优化分配、满足现代教育信息化的需求、应对多样化教学的挑战、实现多角色管理、利用技术发展提升服务质量、保障系统安全以及顺应智能化趋势等多个方面。这些因素共同推动了教室管理系统的发展和完善,以适应现代教育环境的变化[1]。
1.2研究目的及意义
教室是学校的重要资源,尤其在大学等教育机构中,教室资源往往比较紧张。通过教室管理系统,可以更合理地分配和使用教室资源,避免资源的浪费。传统的教室管理多依赖于人工操作,而通过教室管理系统的引入,可以大幅减少人力在教室调度、借用等方面的重复性劳动,从而提高工作效率。教室管理系统可以帮助教师和学生更好地安排教学活动,如课程表的制定、教室的预约等,使得教学活动更加有序进行。教室管理系统通常具备增、删、改、查等功能,方便学生、教师以及管理人员实时查询教室的使用情况,做出相应的调整和安排。随着智慧教育的兴起,教室管理系统作为智慧教室的一部分,可以结合物联网技术、云计算技术和智能技术等,构建更加智能化的学习环境。系统化的管理有助于提升教室的管理质量,确保教室环境的整洁、设备的完好,为师生提供一个更好的学习和教学环境。教育信息化是现代教育发展的必然趋势,教室管理系统的研究与实现是适应这一趋势的重要步骤,有助于推动教育信息化进程。一个具有良好交互性的教室管理系统可以极大地提升用户(包括学生、教师和管理人员)的体验,使得教室管理变得更加人性化和便捷。通过有效的教室管理,可以确保教育资源在不同学科、不同班级之间的均衡配置,促进教育公平。
教室管理系统的研究不仅能够提高教室资源的利用效率,减少人力资源的消耗,还能优化教学活动的安排,提供实时信息查询,支持智慧教育的发展,提升管理质量,适应教育信息化的趋势,增强用户体验,促进教育资源的均衡配置,以及保障教学的安全。这些目的和意义共同体现了教室管理系统在现代教育中的重要性和必要性[2]。
1.3国内外发展现状
随着信息技术的高速发展,中国在人事、商品以及财务管理等多个领域都广泛应用了信息管理系统。这些系统的研发和应用极大地提高了管理效率和准确性。在学生宿舍管理方面,国内系统在安全性和信息更新化方面与发达国家相比还存在一定差距。例如,各系统的资源共享性较差,信息取舍往往依赖于管理者的认知与喜好,这可能导致用户需求的不充分满足。
发达国家的教室管理系统通常具有更高的安全性和更先进的技术应用。他们更倾向于使用集成化的管理平台,实现资源共享和信息的实时更新。这种管理模式更能掌握用户的真实需求,提供更加个性化的服务。
总的来说,无论是在国内还是国外,教室管理系统都在向着智能化、信息化的方向发展[4]。
1.4 研究内容
调研:通过网络、图书馆等渠道调查该课题的参考资料。
系统需求分析:对参考资料分类整理,设想需求与功能,再研究实现功能所需的开发工具、技术、数据库等。
系统概要设计:设计功能模块、流程、数据库模型、表与字段间的关系等。
系统实现:对系统用户以文字加截图的形式进行精细化分解。
系统测试:测试的作用和好处,测试的具体操作步骤,分析需求与测试结果是否一致[5]。
1.5本文的结构
本论文分为六个章节。
第一章,绪论,其包含课题背景及意义,现国内外的发展现状,本课题要研究的内容,所使用开发工具的描述等信息。
第二章,主要介绍了系统的开发技术。
第三章,先讲述功能需求分析,再讲述系统可行性分析和流程图的设计。
第四章,是系统设计原理,功能模块设计和数据库设计。
第五章,详细讲述每个界面的正确操作步骤。
第六章,该章讲述了测试的目的以及测试过程及用例。
最后对论文进行总结,包括致谢和参考文献等内容[6]。
- 关键的技术介绍
此次管理系统的关键技术和架构由B/S结构、JAVA语言介绍和MySQL数据库,是本系统的关键开发技术,对系统的整体、数据库、功能模块、系统页面以及系统程序等设计进行了详细的研究与规划[7]。
2.1 springboot框架介绍
Spring Boot是近几年最为流行的后台开发框架,它的诞生一改过去Spring框架开发中繁琐的配置,极大地简化了Spring应用的搭建和开发。Spring Boot框架不仅保有了Spring框架中的所有优秀特性,还通过使用特定的配置方式,在底层帮助开发人员在工程创建是就预先做了很多配置,这样在开发时就不再需要开发人员过多进行繁琐的配置了。另外在Spring Boot中集成了大量框架,这就使得开发人员不再需要到处寻找在导入开发中需要依赖的jar包,同时也解决了依赖包版本冲突问题,从而提高了依赖包引用的稳定性,从而实现了对Spring应用搭建和开发过程的简化。
2.2 MySQL简介
MySQL 是一种关联数据库管理系统,该系统速度快而且灵活性强,主要原因是它将数据保存在不同的表中,MySQL软件的优点是成本低、体积小、速度快,开放源码,所以一般中小型网站的开发都选择 MySQL 作为网站数据库。
2.3 B/S架构
B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
(1)跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间。
(2)低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少。
2.4 Java语言简介
Java,目前Internet中最流行的编程语言之一。它吸取了C++编程语言的长处的同时还摒弃了许多复杂抽象,不易掌握的问题,使得Java编程语言不但功能强大而且使用方便。
Java技术在使用过程中有优势也有劣势。其优势在于,因为Java本身相对严格的语法,所以可以强化程序员在编程时的规范性问题,不容易出现明显结构错乱的问题。因此,规范将是Java的巨大优势。但是它也有劣势,就是不太适应互联网模式下的不断修改,总是修改容易破坏架构。
面向对象的三种特征:封装,继承和多态。
密封:主要是指对数据信息的隐藏,通过把数据信息类别与通过数据信息的功能密封在一块,让数据信息被保存在数据信息类别的里面,只留下一部分可以对外的接口,以便于尽可能的地隐蔽里面的数据信息。因此好处也就十分的明显就是实现了专业的分工,同时也隐藏了信息,保证了安全。
继承:这就像是实际人生中的父子关系一样,孩子要承袭父母的特点。类似的,一个种类同时也继承了另一个种类的某些特性,其父属之间有一种特别的一般性的联系,是is-a的关系,从根本上来说都属于同一个实体。
多态:多态系统是以封装和继承为基础的。由于所传输的父类对象能够引入各种各样的子类对象,因而能够显示出各种各样的现象,给多态的编程带来了良好的扩展。
第三章 系统分析
3.1系统需求分析
需求分析的首要任务是要分析用户的需求,知道用户存在的一些情况,并且要明确用户的使用状况,然后设计规划解决的问题。其中在使用定性的分析以及定量的分析,从这两个方面获取用户的需求。一方面定性的分析获得的应该是用户的基本需求,能够发现现在人们的习惯要求。所以定性的需要主要是为了多与用户交流,从而更为深刻的了解一些存在的需求问题;定量的分析则是发现一些潜在的用户,并且获得不一样的反馈内容。所以定量的需求要让用户来阐述一些情况,一定让使用者清晰的进行客观的描述,这样才能够比较全面的获得用户的需求所在[8]。
其中获得用户需求以后,就要可以将用户需求设计为系统的功能模块。在能及时的分析和发现有关需求的情况下,需要系统同时的跟进需求设计。在教室管理过程中还需要创建需求工作的数据分析,以便于后面的分析做总结[9]。写入一个需求的报告内容,其中需要包含完整的描述需求、以及功能需求、模型等后续开发过程中还需要用到的部分资料。
需求的分析中用户需求就是比较的重要,而且可以通过各种的路径,以及各用户对于系统的功能需求,你需要对这些内容做出整理以及分类,然后分析这些需求的现实情况下的可能原因,还需要有认真的分析过程,结合现实的情况下最终做出一系列的需求资料。在有关用户的期望分析中能够明确一些可能实现的情况,课室信息功能是许多个可以测试的功能相结合的,正是由于这些功能可以使得用户能够更加积极的提供出需求,让系统功能可以变得更加的完善。这样就可以保证所有设计的功能模块都是可以用到的,而且也是可测试的,对于后续系统的开发能够有比较关键的作用,也能快速完成用户所提供的需求[10]。
3.2系统可行性分析
3.2.1技术可行性
该系统使用springboot框架开发,MySQL数据库开发并实现。对于以上描述的技术,在当代都是较为成熟的技术和平台,虽然它们都有自已的体系,但在程序员的眼里,它们的配合度是很高的,数据库负责管理数据,开发工具负责管理项目,技术负责代码的框架,既相互独立,又相互依赖[11]。以上描述的工具、技术都已转化为自身的技能,所以从技术角色考虑是可行的,工作人员对于技术的关注度并不高,只要程序可用即可。
3.2.2 经济可行性
经济可行性,可分为两种,支出和收入,该系统属于研究型毕业设计,所以收入部分暂不考虑。支出可分为,设备、场地、开发环境、人力、时间等一切需考虑的因素,所有信息都是影响形成系统的一部分。设备:只需一台笔记本电脑,配套的输入设备;场地:暂定为图书馆与校内的自习室;开发环境:良好;人力:自身、指导老师、同学;时间:从选题到毕业为止,大约8个月。从以上描述可知,大部分条件已经满足,所以该系统不会存在经济方面的问题,所以是可行的。
3.2.3社会可行性
社会可行性,广义而讲可涉及到道德方面、法律方面、社会方面,每个方面都会影响系统的形成。本系统的是独立且没有任何传播性质的信息,更涉及不到道德层面,法律层面;本系统也没有触发法律,没有赌博、黄色等类型信息,同时也是遵从国家法律,不会显示任何触发法律层面的信息;社会方面,该系统是为方便用户提供更好的服务,是轻量级的教室管理系统,会为人们带来快速并有效查询的功能,也是具有贡献意义的。总体而言,该系统也是具有社会可行性的[12]。
3.3 功能需求分析
教室管理系统是以学校教室的状况为起点,综合网络空间开发设计要求。目的是将课室信息通过网络平台变换为在网上操作,完成教室管理系统的方便快捷、安全性、规范做了保障,目标明确。
这一系统可以分成三种类别的用例实体模型,分别是学生用户、教师用户和管理员。这三个角色的作用将在下面详解和叙述。
(1)学生用户
主要使用者为学生。具备有:首页、校园公告、学校资讯、课室信息、失物招领、我的帐户、个人中心。学生用户用例图如图3-1所示。
图3-1 学生用户用例图
(2)教师用户
主要使用者为教师用户。具备有:系统首页、校园公告、学校资讯、课室信息、失物招领、我的帐户、个人中心。教师用户用例图如图3-2所示。
图3-2 教师用户用例图
(3)管理员
进行维护,以及平台的后台管理工作都依靠管理员,其可以对一些信息进行管理。需具备功能有;系统首页、系统用户、功能类别管理、课室信息管理、预约课室管理、课室签到管理、课室签退管理、失物招领管理、系统管理、校园公告管理、资源管理。管理员用例图如图3-3所示。
图3-3 管理员用例图
3.4流程图设计
流程图是用具体的图形符号和相应的线条来表示系统执行的整个过程。因为这种图可以很容易地描述系统的一系列过程,所以它的所有图形符号都是比较关键的,基本上一个图形符号可以表示一个过程的一个步骤。流程图不仅提供了一个比较完整、全面的实施过程,而且可以发现整个团队协同设计过程中可能存在的缺陷和不足,便于在后续过程中及时对系统进行修正和改进。
通过流程图可以对系统的需求和相关流程进行分析,可以详细细分为各个部分的设计。对于设计人员来说在开发过程中要能够以流程图为基础,能够快速的提高自己的逻辑思维,并且也能够指导后续的操作在系统设计中最重要的部分就是程序的设计,然后具体的编写程序,流程图是设计过程中的重要工具,下面是流程图的部分设计。
3.4.1 登录流程图
登录流程是该系统的第一个流程,登录的第一步是输入账号、密码登录,系统会验证账号与密码是否正确,正确时系统会判断账号类型再进入不同的后台;不正确时,会返回到登录的第一步,输入用户重新执行登录流程。该流程如图3-4所示。
图3-4登录流程图
3.4.2 添加新用户流程图
添加新用户的流程是先查询新用户名是否已存在,如已有该用户名,需重拟用户名并同时输入新用户的其它信息,添加新用户到数据库时会先验证数据是否完整,信息都正确且完整时,返回并刷新用户列表;信息不正确时,会返回输入信息的那一步。该流程如图3-5所示。
图3-5添加新用户流程图
第四章 系统概要设计
4.1系统设计原理
设计原理,是指一个系统的设计由来,其将需求合理拆解成功能,抽象的描述系统的模块,以模块下的功能。功能模块化后,变成可组合、可拆解的单元,在设计时,会将所有信息分解存储在各个表中,界面不会显示所有定义的字段。在设计时,会有几大要求,抽象、模块化、信息隐藏、耦合低、内聚等特性,本系统的设计也符合以上几大特性。制作和显示流程都属于程序员需要分析研究的一部分。每个模块都是相对独立的,系统前台不显示账号操作权限范围外的信息。
4.2功能模块设计
该章节的功能模块设计,只是大概描述了系统的所有功能模块,将功能按权限来讲解。系统总体结构图如图4-1所示。
图4-1 系统总体结构图
4.3 数据库设计
4.3.1数据库设计原则
学习程序设计,如果想要了解数据库管理系统或者是按照系统接口的要求制作的,就必须创建一个数据库管理系统模型,用来存储数据,这样在进行应用程序编程的过程中,就不需要加载操作系统页面的信息,从而提高整个系统的工作效率。在数据库管理系统中承载着众多的数据,应该说,一个管理信息系统的建设中心和基地,也为建设管理信息系统和信息管理系统提出了新的查询、删除、修改和操作功能,使管理信息系统建设可以快速查询需要的数据,而不是直接从代码中查找。信息库管理系统由各个组成部分的信息表按照具体的方法进行准确的归并、排序和组成信息库管理系统。
4.3.2数据库E-R图设计
E-R图即实体-联系图,主要作用是提供了解显示数据类型存在的联系的途径,是藐视现实世界的概念模型,其关键要素是实体型、属性、联系。以下是本系统主要的E-R图如下所示。
教师用户信息E-R如图4-2所示。
图4-2 教师用户信息E-R图
学生用户信息E-R如图4-3所示。
图4-3学生用户信息E-R图
课室信息E-R如图4-4所示。
图4-4课室信息E-R图
失物招领E-R如图4-5所示。
图4-5失物招领E-R图
教室管理系统总体E-R如图4-6所示。
图4-6教室管理系统总体E-R图
4.3.3数据库表结构设计
该系统采用的数据库是MySQL,根据该系统的数据存储特点进行数据库关系表的设计。下面是该系统中关键部分关系表的详细信息。
表4-1: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 | 用户编号: |
表4-2: (文章:用于内容管理系统的文章)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
2 | title | varchar | 125 | 0 | N | Y | 标题:[0,125]用于文章和html的title标签中 | |
3 | type | varchar | 64 | 0 | N | N | 0 | 文章分类:[0,1000]用来搜索指定类型的文章 |
4 | hits | int | 10 | 0 | N | N | 0 | 点击数:[0,1000000000]访问这篇文章的人次 |
5 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
8 | source | varchar | 255 | 0 | Y | N | 来源:[0,255]文章的出处 | |
9 | url | varchar | 255 | 0 | Y | N | 来源地址:[0,255]用于跳转到发布该文章的网站 | |
10 | tag | varchar | 255 | 0 | Y | N | 标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主体内容 | |
12 | img | varchar | 255 | 0 | Y | N | 封面图 | |
13 | description | text | 65535 | 0 | Y | N | 文章描述 |
表4-3:article_type (文章分类)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000]决定分类显示的先后顺序 |
3 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
4 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
6 | icon | text | 65535 | 0 | Y | N | 分类图标: | |
7 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表4-4: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 | 更新时间: |
表4-5:booking_a_class_room (预约课室)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | booking_a_class_room_id | int | 10 | 0 | N | Y | 预约课室ID | |
2 | classroom_number | varchar | 64 | 0 | Y | N | 课室编号 | |
3 | classroom_name | varchar | 64 | 0 | Y | N | 课室名称 | |
4 | classroom_functions | varchar | 64 | 0 | Y | N | 课室功能 | |
5 | classroom_situation | varchar | 64 | 0 | Y | N | 课室情况 | |
6 | student_account | int | 10 | 0 | Y | N | 0 | 学生账号 |
7 | teacher_account | int | 10 | 0 | Y | N | 0 | 教师账号 |
8 | appointment_time | datetime | 19 | 0 | Y | N | 预约时间 | |
9 | reason_for_appointment | text | 65535 | 0 | Y | N | 预约缘由 | |
10 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
11 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表4-6:classroom_check_in (课室签到)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | classroom_check_in_id | int | 10 | 0 | N | Y | 课室签到ID | |
2 | classroom_number | varchar | 64 | 0 | Y | N | 课室编号 | |
3 | classroom_name | varchar | 64 | 0 | Y | N | 课室名称 | |
4 | classroom_functions | varchar | 64 | 0 | Y | N | 课室功能 | |
5 | classroom_situation | varchar | 64 | 0 | Y | N | 课室情况 | |
6 | student_account | int | 10 | 0 | Y | N | 0 | 学生账号 |
7 | teacher_account | int | 10 | 0 | Y | N | 0 | 教师账号 |
8 | appointment_time | datetime | 19 | 0 | Y | N | 预约时间 | |
9 | attendance_status | varchar | 64 | 0 | Y | N | 签到情况 | |
10 | sign_in_time | datetime | 19 | 0 | Y | N | 签到时间 | |
11 | situation_notes | text | 65535 | 0 | Y | N | 情况备注 | |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表4-7:classroom_check_out (课室签退)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | classroom_check_out_id | int | 10 | 0 | N | Y | 课室签退ID | |
2 | classroom_number | varchar | 64 | 0 | Y | N | 课室编号 | |
3 | classroom_name | varchar | 64 | 0 | Y | N | 课室名称 | |
4 | classroom_functions | varchar | 64 | 0 | Y | N | 课室功能 | |
5 | classroom_situation | varchar | 64 | 0 | Y | N | 课室情况 | |
6 | student_account | int | 10 | 0 | Y | N | 0 | 学生账号 |
7 | teacher_account | int | 10 | 0 | Y | N | 0 | 教师账号 |
8 | sign_in_time | datetime | 19 | 0 | Y | N | 签到时间 | |
9 | sign_out_time | datetime | 19 | 0 | Y | N | 签退时间 | |
10 | usage_duration | text | 65535 | 0 | Y | N | 使用时长 | |
11 | remarks | text | 65535 | 0 | Y | N | 备注情况 | |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表4-8:classroom_information (课室信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | classroom_information_id | int | 10 | 0 | N | Y | 课室信息ID | |
2 | classroom_number | varchar | 64 | 0 | Y | N | 课室编号 | |
3 | classroom_name | varchar | 64 | 0 | Y | N | 课室名称 | |
4 | classroom_functions | varchar | 64 | 0 | Y | N | 课室功能 | |
5 | classroom_situation | varchar | 64 | 0 | Y | N | 课室情况 | |
6 | classroom_pictures | varchar | 255 | 0 | Y | N | 课室图片 | |
7 | classroom_configuration | text | 65535 | 0 | Y | N | 课室配置 | |
8 | classroom_introduction | text | 65535 | 0 | Y | N | 课室简介 | |
9 | praise_len | 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 | 更新时间 |
表4-9:collect (收藏)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表4-10:comment (评论)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表4-11:functional_categories (功能类别)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | functional_categories_id | int | 10 | 0 | N | Y | 功能类别ID | |
2 | functional_classification | varchar | 64 | 0 | Y | N | 功能分类 | |
3 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表4-12: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: |
表4-13:lost_and_found (失物招领)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | lost_and_found_id | int | 10 | 0 | N | Y | 失物招领ID | |
2 | teacher_account | int | 10 | 0 | Y | N | 0 | 教师账号 |
3 | student_account | int | 10 | 0 | Y | N | 0 | 学生账号 |
4 | item_code | varchar | 64 | 0 | Y | N | 物品编码 | |
5 | item_name | varchar | 64 | 0 | Y | N | 物品名称 | |
6 | product_images | varchar | 255 | 0 | Y | N | 物品图片 | |
7 | item_status | varchar | 64 | 0 | Y | N | 物品状态 | |
8 | registration_time | datetime | 19 | 0 | Y | N | 登记时间 | |
9 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
10 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
11 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表4-14:notice (公告)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
2 | title | varchar | 125 | 0 | N | N | 标题: | |
3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表4-15:praise (点赞)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | praise_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: |
8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
表4-16:slides (轮播图)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表4-17:student_users (学生用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_users_id | int | 10 | 0 | N | Y | 学生用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表4-18:teacher_users (教师用户)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | teacher_users_id | int | 10 | 0 | N | Y | 教师用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
5 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表4-19: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 | 文件类型 |
表4-20: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 | | 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 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
15 | vip_level | varchar | 255 | 0 | Y | N | 会员等级 | |
16 | vip_discount | double | 11 | 2 | Y | N | 0.00 | 会员折扣 |
表4-21: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.1教前台学生用户功能的实现
当游客打开系统的网址后,首先看到的就是首页界面。在这里,游客能够看到教室管理系统的导航条显示首页、校园公告、学校资讯、课室信息、失物招领、我的帐户、个人中心。系统首页界面如图5-1所示:
图5-1 系统首页界面
在注册流程中,学生用户在Vue前端填写必要信息(如帐号、密码等)并提交。前端将这些信息通过HTTP请求发送到Java后端。后端处理这些信息,检查用户名是否唯一,并将新用户数据存入MySQL数据库。完成后,后端向前端发送注册成功的确认,前端随后通知学生用户完成注册。这个过程实现了新用户的数据收集、验证和存储。
图5-2 学生用户注册界面
在登录流程中,学生用户首先在Vue前端界面输入账号、密码和验证码。这些信息通过HTTP请求发送到Java后端。后端接收请求,通过与MySQL数据库交互验证学生凭证。如果认证成功,后端会返回给前端,允许学生访问系统。这个过程涵盖了从学生输入到系统验证和响应的全过程。如图5-3所示:
图5-3学生用户登录界面
学生用户点击课室信息,在课室信息页面的查询栏输入课室信息名称、课室情况,进行查询,还可以查看课室编号、课室名称、课室功能、课室情况、点赞数、课室配置、课室简介等信息;并根据需求进行预约课室、点赞或收藏的操作,如图5-4所示:
图5-4课室信息页面
学生用户点击失物招领,在失物招领页面的查询栏输入物品编码、物品名称进行查询,可以查看失物招领详情等信息,并进行点赞、收藏或评论的操作,如图5-5所示:
图5-5失物招领页面
在个人中心页面可以对个人首页、预约课室、课室签到、课室签退、失物招领、收藏进行详情操作,如图5-6所示:
图5-6个人中心界面
5.3 前台教师用户功能的实现
在注册流程中,教师用户在Vue前端填写必要信息(如帐号、密码等)并提交。前端将这些信息通过HTTP请求发送到Java后端。后端处理这些信息,检查用户名是否唯一,并将新用户数据存入MySQL数据库。完成后,后端向前端发送注册成功的确认,前端随后通知教师用户完成注册。这个过程实现了新用户的数据收集、验证和存储。如图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-14所示。
图5-14教室管理系统界面图
管理员点击预约课室管理;在预约课室列表页面对课室编号、课室名称、课室功能、课室情况、学生帐号、教师帐号、预约时间等信息,进行查询、课室签到或删除预约课室等操作;如图5-15所示。
图5-15预约课室管理界面图
管理员点击课室签到管理;在课室签到页面对课室编号、课室名称、课室功能、课室情况、学生帐号、教师帐号、预约时间等信息,进行查询、课室签退或删除课室签到等操作;如图5-16所示。
图5-16课室签到管理界面图
管理员点击课室签退管理;在课室签退页面对课室编号、课室名称、课室功能、课室情况、学生帐号、教师帐号、签到时间等信息,进行查询或删除课室签退等操作;如图5-17所示。
图5-17课室签退管理界面图
管理员点击失物招领管理;在失物招领页面对教师帐号、学生帐号、物品编号、物品名称、物品图片、物品状态、登记时间等信息,进行查询、添加、修改详情或删除失物招领等操作;如图5-18所示。
图5-18失物招领管理界面图
管理员点击校园公告管理;在校园公告页面对标题、创建时间、更新时间等信息,进行查询、添加、修改详情或删除校园公告等操作;如图5-19所示。
图5-19校园公告管理界面图
第六章 系统测试
6.1系统测试的目的
测试是为了发现问题,而不是证明程序没有问题。测试是可编写测试用例来描述测试的步骤、预想的界面或效果与实际的差距,来验证程序是否正确。测试的原则有几条,测试需要输入条件和输出结果,制定测试用例来规范测试的步骤,也会适当的推进测试的进度。正常的测试流程是从项目立项开始,就可按需求先写测试用例,与程序开发同步进行,等程序开发完成,测试用例也可同时完成,等程序开发交接到测试时,可直接展开测试工作[13]。
6.2软件测试过程
软件测试是软件设计的最后一个阶段,它贯穿于整个设计过程,是一项巨大的任务。软件测试需要测试程序的所有部分。每个部分的测试是不同的,在测试之前需要分为以下几个阶段:
一、单元测试,即模块测试;这是检查软件程序代码的测试。用于软件的最小单位部分。单元测试分为手动测试和动态测试。为了保证程序算法的正确性,静态检测应标准化程序的逻辑、标准化和正确性。该步骤是检测尽可能多的错误。动态检测通过将实际结果与预期结果进行比较来检测错误[14]。
二、集成测试:该测试基于单元测试,用于测试系统的各个功能模块。任何软件设计都会有一个集成阶段,因此在软件测试过程中,集成测试是必不可少的一部分。在集成测试过程中,由于测试是在模块之间进行的,因此在测试过程中可能不会发现问题,但在整个测试过程中会暴露出来。同时,在集成测试过程中,注意模块连接过程中是否有数据丢失。还应注意的是,尽管单个模块的误差可能很少且没有影响,但拼接可能对系统产生很大影响。
三、系统测试:系统测试遵循集成测试。系统测试将通过集成测试的部分作为整个系统的一部分。它与电子设备的所有软硬件一起,可以通过实际操作检测模拟的实际环境中是否存在错误。系统测试需要与计划中的理想情况进行比较,以找出与预期的差异。在分析设计器后确定如何修改。在软件的实际操作过程中,会出现许多意外错误,测试人员可能无法在第一时间解决问题。因此,系统测试应尽可能在实际运行情况下进行,以达到更好的测试目的。
四、验收测试:验收测试是在设计完成和发布之前对系统的最终测试。它需要了解用户和合作伙伴的需求。我们将与他们一起完成测试,并根据他们的需求进行有针对性的修改,成为能够更好地同时满足两者需求的软件[15]。
6.3系统测试用例
性能测试是指通过自动化测试工具模拟系统在不同负载和压力情况下,观察平均响应时间、CPU占用率和内存占用率等性能评价指标的变化情况,以检验系统性能是否能达到预期目标,确保平台上线后稳定运行。
本文采用开源的测试工具JMeter模拟用户对平台API网关的并发请求行为,并发量从200开始逐渐递增,利用JMeter自带的监听器与插件记录平均响应时间、CPU占用率和内存占用率等性能评价指标,具体测试结果如表6.1所示。
表6.1 API网关性能测试结果
由测试结果可知,在系统并发量逐渐递增到1200的过程中,平均响应时间控制在1.5秒内,异常率保持为0%,响应失败率小于5%} CPU占用率小于80%,内存占用率小于95%,达到了预期的性能目标。当并发量达到1400时,有一部分请求出现异常,各项性能指标也超出以上标准,说明目前系统在1400并发请求时达到了性能瓶颈。
结 论
本系统将采用Eclipse为该系统的开发工具,JAVA 语言进行开发。系统从选题开始,共经历了搜集选题背景信息和选题目的及意义的分析,通过对国内外的研究,需求分析的整理,数据库的模型和表的设计,具体代码的实现。
通过调研和分析,该系统的功能设计为注册登录、个人信息修改、教师用户、学生用户、预约课室、课室签到、课室签退、失物招领、校园公告、学校资讯等管理功能。
该系统从设计和实现,再到系统的测试,每个环节都一一经历学习,每个环节都顺利完成。其实,在配置系统的开发工具时,就已遇到各种问题,但在导师和同学的帮助下,都已顺利的解决。本系统有诸多功能都不够完善,希望日后技术和经验都更丰富的情况下,能完善系统的不足之处。
致 谢
时光荏苒,岁月如梭。大学美好的四年学涯生活即将结束,但仔细想想,这四年之间发生了很多故事。曾经与同学、老师、亲朋好友在大学里所有美好的事物都将成为回忆,心中浮满好多不舍。如果让我总结大学四年生活,我会说我成长了,这四年时光非常值得!感谢所有相遇的老师、朋友们!
首先,我要感谢我的指导老师,谢谢您这段时间对我的论文修改,是您的耐心、细心辅助我顺利的完成了论文的编写,也感谢您的奉献精神,让我学习到了职业精神,希望我以后也能对我的工作同样的负责。
其次,我要感谢我的同学,四年里分享我的情感生活,让我们成为了志同道合的朋友,感谢在大学认识你们。
最后,我要感谢我的父母和亲戚,是你们这些年的耐心的陪伴,让我成为了现在能独立思想的个人,有思想、有理想的人。谢谢所有感谢曾经帮助过我的人,谢谢你们,谢谢!
参考文献
[1]SilberschatzKorth Sudarshan 著,北京大学 杨冬青 李红燕 唐世渭等翻译 数据库系统概念(原书第6版)机械工业出版社,2019
[2] 于小鹏 MySQL 2019 清华大学出版社, 2021
[3] [美]Christian Nagel 著,李铭译清华大学出版社 C#高级编程 2020
[4] 王红陈功平张寿安李家兵曹维祥金先好金宗安胡琼著,数据库案例与应用开发项目教程清华大学出版社 2020
[5] 罗福强 C#程序开发教程中国电力出版社 2021
[6] [英]马克·J.普赖斯(Mark J. Price)著王莉莉译清华大学出版社 C# 8.0和.JAVA Core 3.0高级编程 2020
[7] [英]约翰·夏普(John Sharp)著周靖译 Visual C#从入门到精通(第9版)清华大学出版社 2019
[8] 肖宏启、苏畅著, .JAVA网站开发项目化教程(第2版) 清华大学出版社 2021
[9] 徐洁罄. 数据库技术实用教程中国铁道出版社 2020
[10]赵良辉.MySQL数据库轻松实务-基于MySQL 2015.MySQL 2016 华南理工大学出版社 2019
[11]黄梯云李一军.管理信息系统(第7版) 北京: 高等教育出版社,2019年.
[12]胡艳丽. MySQL 2019数据库原理及应用北京:清华大学出版社2021
[13]Alex Petrov,Database Internals (A deep-dive into how distributed data systems work).US: O'Reilly Media. Inc, 2020
[14] Abraham Silberschatz Professor / Henry F Korth / S Sudarshan. Database System Concepts (7th Edition), US: McGraw-Hill Education, Inc, 2020
[15] James Singleton. ASP.JAVA Core 2 High Performance. British:Packt Publishing, Inc,2019