springboot基于Java的校园导航微信小程序的设计与实现(代码+数据库+LW)
摘 要
相比于以前的传统手工管理方式,智能化的管理方式可以大幅降低学校的运营人员成本,实现了校园导航的标准化、制度化、程序化的管理,有效地防止了校园导航的随意管理,提高了信息的处理速度和精确度,能够及时、准确地查询和修正建筑速看等信息。
课题主要采用Uni-weixin、SpringBoot架构技术,前端以小程序页面呈现给学生,结合后台java语言使页面更加完善,后台使用MySQL数据库进行数据存储。微信小程序主要包括学生信息、校园简介、建筑速看、系统信息等功能,从而实现智能化的管理方式,提高工作效率。
关键字:校园导航微信小程序;SpringBoot框架;MySQL数据库
目 录
摘 要 I
Abstract II
1 绪 论
1.1研究意义
1.2设计目的
1.3设计思想
2系统开发技术 3
2.1 Java语言 3
2.2微信开发者工具 4
2.3小程序目录结构以及框架介绍 4
2.4 SpringBoot框架 5
2.5 MySQL数据库 5
3系统分析 6
3.1微信小程序的性能 8
3.1.1项目背景
3.1.2需求分析
3.2系统用例图
3.3系统流程图
4 系统设计
4.1系统功能结构设计图
4.2数据库设计
4.2.1数据库设计原则
4.2.2数据表设计
5系统详细设计
5.1小程序端功能的实现
5.2 服务端功能的实现
6 系统测试
6.1软件测试原则
6.2测试用例
结 论
参考文献
致 谢
1 绪 论
近年来,随着互联网科技的进步和发展,人们的生活水平得到了极大的提高,各行各业也在快速增加,于是管理工作也日渐繁重。由于传统的管理方式,人工管理成本高,效率低,还存在信息的不明确,与管理人员沟通方面的压力[1]。所以人工管理方式在很大的程度上存在弊端。给人们的生活带来了非常大的不便,导致不能满足现在社会的需求。现如今利用计算机技术管理成为一个越来越受关注的社会问题,对于能够快速的找到所需信息,也是为了提高管理的效率[2]。
1.1研究意义
社会前进的步伐带动信息化的发展,信息化的建设使得人们生活的节奏加快,至使人们更加注重信息的时效性。陈旧的管理获取信息方式将无法满足人们的需求。从而人们更加关注微信小程序[3]。微信小程序可以满足现代人们获取信息实时、便捷等特点,只要有网络的地方,就能迅速查找到想要的信息。
计算机技术已成为人们管理信息的重要工具。能解决人们获取信息更加有效快捷,提高人们的工作效率为重要手段[4]。
1.2设计目的
通过对校园导航管理内容的学习研究,进而设计并实现一个校园导航微信小程序。微信小程序能实现的主要功能应包括校园简介、建筑速看等一些操作。还有可以正确的为用户服务,准确显示当前信息[5]。
在校园导航微信小程序的前期,即需求分析阶段,我们对用户的需求进行了详细的描述,并且在需求规范中有详细的描述和阐明。根据系统需求的分析,对校园简介的管理进行了整体的设计。着重对软件模块的设计进行了详细的分析,以达到对系统的需求。重点阐述了系统的划分、接口的确定、各模块间的数据传输、数据结构与模块结构的设计[6]。在下面的概要设计中,将会详细地描述这个阶段中的系统。
系统用例图如图3-1、图3-2、图3-3、图3-4所示。



系统功能结构设计图
本次系统所涉及到的有关的功能,都是用功能结构图来简洁和清晰的表示出来,功能结构图就是能够把比较复杂的功能结构用图的形式清晰的描绘下来,并且为后续的设计以及测试等模块提供了明确的方向,在构思功能结构图的时候,便可以给设计的过程带来一定的思维导向,不至于在设计过程中有所遗漏,可以尽可能的明确系统所涉及到的功能。
系统的功能结构图如图4-1所示。

数据表设计
在关系数据E-R图中,分析并创建数据表,数据表用来记录信息,数据表关系由多个数据表组成,下面介绍的是数据表各个字段信息如下表所示。
表4-1:建筑速看
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | 主键 | 主键 | ||
| addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
| jianzhumingcheng | varchar | 200 | 建筑名称 | ||
| zhaopian | longtext | 4294967295 | 照片 | ||
| loucengshu | varchar | 200 | 楼层数 | ||
| jianzhumianji | float | 建筑面积(㎡) | |||
| didian | varchar | 200 | 地点 | ||
| jianlishijian | date | 建立时间 | |||
| shiyongyongtu | varchar | 200 | 使用用途 | ||
| jianzhujieshao | longtext | 4294967295 | 建筑介绍 |
表4-2:配置文件
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | 主键 | 主键 | ||
| name | varchar | 100 | 配置参数名称 | ||
| value | varchar | 100 | 配置参数值 |
表4-3:聊天助手表
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | 主键 | 主键 | ||
| addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
| ask | varchar | 200 | 提问 | ||
| reply | longtext | 4294967295 | 回复 |
表4-4:留言咨询
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | 主键 | 主键 | ||
| addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
| userid | bigint | 用户id | |||
| adminid | bigint | 管理员id | |||
| ask | longtext | 4294967295 | 提问 | ||
| reply | longtext | 4294967295 | 回复 | ||
| isreply | int | 是否回复 |
表4-5:学生
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | 主键 | 主键 | ||
| addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
| xuehao | varchar | 200 | 学号 | ||
| mima | varchar | 200 | 密码 | ||
| xueshengxingming | varchar | 200 | 学生姓名 | ||
| xingbie | varchar | 200 | 性别 | ||
| touxiang | longtext | 4294967295 | 头像 | ||
| xueshengshouji | varchar | 200 | 学生手机 | ||
| nianji | varchar | 200 | 年级 | ||
| pquestion | varchar | 200 | 密保问题 | ||
| panswer | varchar | 200 | 密保答案 |
表4-6:关于我们
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | 主键 | 主键 | ||
| addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
| title | varchar | 200 | 标题 | ||
| subtitle | varchar | 200 | 副标题 | ||
| content | longtext | 4294967295 | 内容 | ||
| picture1 | longtext | 4294967295 | 图片1 | ||
| picture2 | longtext | 4294967295 | 图片2 | ||
| picture3 | longtext | 4294967295 | 图片3 |
表4-7:校园简介
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | 主键 | 主键 | ||
| addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
| xuexiaomingcheng | varchar | 200 | 学校名称 | ||
| fengmian | longtext | 4294967295 | 封面 | ||
| lianxidianhua | varchar | 200 | 联系电话 | ||
| lianxiren | varchar | 200 | 联系人 | ||
| xuexiaoleixing | varchar | 200 | 学校类型 | ||
| xuexiaojianjie | longtext | 4294967295 | 学校简介 | ||
| xuexiaodizhi | varchar | 200 | 学校地址 |
表4-8:用户表
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | 主键 | 主键 | ||
| username | varchar | 100 | 用户名 | ||
| password | varchar | 100 | 密码 | ||
| role | varchar | 100 | 角色 | 管理员 | |
| addtime | timestamp | 新增时间 | CURRENT_TIMESTAMP |
表4-9: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-10:关于我们
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | 主键 | 主键 | ||
| addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
| title | varchar | 200 | 标题 | ||
| subtitle | varchar | 200 | 副标题 | ||
| content | longtext | 4294967295 | 内容 | ||
| picture1 | longtext | 4294967295 | 图片1 | ||
| picture2 | longtext | 4294967295 | 图片2 | ||
| picture3 | longtext | 4294967295 | 图片3 |
表4-11:收藏表
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | 主键 | 主键 | ||
| addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
| userid | bigint | 用户id | |||
| refid | bigint | 商品id | |||
| tablename | varchar | 200 | 表名 | ||
| name | varchar | 200 | 名称 | ||
| picture | longtext | 4294967295 | 图片 | ||
| type | varchar | 200 | 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) | 1 | |
| inteltype | varchar | 200 | 推荐类型 | ||
| remark | varchar | 200 | 备注 |
表4-12:校园公告
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | 主键 | 主键 | ||
| addtime | timestamp | 创建时间 | CURRENT_TIMESTAMP | ||
| title | varchar | 200 | 标题 | ||
| introduction | longtext | 4294967295 | 简介 | ||
| picture | longtext | 4294967295 | 图片 | ||
| content | longtext | 4294967295 | 内容 |
小程序端功能的实现
注册界面,第一次使用本小程序的使用者,首先是要进行注册,点击“注册”,然后就会进入到注册的页面里面,将学生信息录入注册表,确认信息正确后,页面才会跳转到登录界面,学生登录成功后可使用本小程序所提供的所有功能,如图5-1所示。

系统首页是学生注册登录后进入的第一个界面,学生可通过小程序端首页进入对应的页面或者通过小程序最下面的那一行导航栏中的“首页、建筑速看、地图、校园公告、我的”,也可以点击“我的”进入我的页面,在我的页面可以对校园简介、我的收藏管理、留言咨询等进行详细操作,如图5-3所示。

学生点击建筑速看,在建筑速看页面的搜索栏输入建筑名称,进行查询,还可以查看建筑名称、照片、楼层数、建筑面积、地点、建立时间、使用用途等详情,按照提示即可收藏等。如图5-4所示。

服务端功能的实现
管理员的登陆界面包括管理员的账号、密码,其中就是已有的账号,还有需要注册的账号。只要管理员在账号上注册,注册信息就会被录入 MySQL数据库,有一个资料库,只要输入成功,就可以登陆,然后进入主页的管理。管理员登录界面如图5-7所示。

管理员登录到校园导航微信小程序可以查看系统首页、个人中心、学生管理、校园简介管理、建筑速看管理、系统管理等功能进行详细操作,如图5-8所示。

管理员点击学生管理;在学生管理页面输入学号、学生姓名、性别、头像、学生手机、年级、密保问题、密保答案等信息,进行查询,新增或删除学生信息等操作;如图5-9所示。

结 论
在本次毕业设计中,我使用java语言,并选择MySQL作为后台数据库进行访问和修改。在设计之初,我对系统逻辑功能的具体实现也很纠结,因为我对校园导航管理的概念还比较模糊,期间我也在网上查询了大量的信息,清楚地了解了现实生活校园导航管理的主要对象和管理需要完成的基本功能。
而在这个过程中也遇到了很多困难,主要有系统逻辑功能的不恰当和系统设计上的错误,当在自己获取信息时无法解决,我会与同学和老师商量和讨论,所以在这个过程中,也让我知道认识到自己的不足和团队的力量是最大的,无论是在学习还是工作中,要融入集体,这样自己才会成长得更快。
当然,在本次设计中,由于时间的不足和本人能力的限制,功能还不完善,对于论文的不足之处,希望在今后的学习中不断改进,使本系统更接近实际操作。
