springboot+mysql+微信小程序知识店铺平台-计算机毕业设计源码17094
摘 要
科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中,应用软件的工作规则和开发步骤,采用springboot技术建设知识店铺平台小程序。
本设计主要实现集人性化、高效率、便捷等优点于一身的知识店铺平台小程序,完成首页、校园资讯、课程教学、问卷调查、我的(基本信息、收藏、预习记录、课后巩固、留言反馈)等功能模块。系统采用了B/S结构,在此基础上,对各业务模块进行了界面交互,以MySQL为数据库,并选用IDEA进行系统设计。在实现功能的同时,为实现系统的升级和扩展,采用了小程序框架Uniapp,用户通过PC机访问Web版本,实现对系统功能的访问和交互。系统管理模块主要负责对已有数据库进行维护、管理、添加、维护、删除、修改等。管理员负责维护系统的各项功能、数据的备份、恢复,保证数据的完整性和一致性;负责用户的管理与配置。最后对系统进行测试后,改善了程序逻辑和代码。同时确保该系统有很好的操作体验,实现了对于管理员、业主的共同双赢。
关键词:知识店铺平台小程序;springboot框架;MySQL数据库
Springboot Knowledge Store Platform Mini Program
Abstract
The rapid development of technology has caused tremendous changes in people's daily lives, and the rapid development of electronic information technology has popularized and applied the application level of electronic information technology in various fields. The arrival of the information age has become an unstoppable fashion trend, and the history of human development is entering a new era. In practical applications, the working rules and development steps of the application software are constructed using spring boot technology to build a knowledge store platform mini program.
This design mainly implements a knowledge store platform mini program that combines the advantages of humanization, efficiency, and convenience, completing functional modules such as homepage, campus information, course teaching, questionnaire survey, and my (basic information, collection, preview records, post class consolidation, and message feedback). 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, in order to upgrade and expand the system, a small program framework called Uniapp was adopted. 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 administrators and owners.
Key words:knowledge store platform mini program; Springboot framework; MySQL database
目 录
第1章 绪论
1.1 研究背景与意义
1.2 开发现状
1.3 本文的组织结构
第2章 相关技术介绍
2.1 UNI-APP小程序框架
2.2 MySQL数据库
2.3 B/S结构
2.4 Springboot框架
第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.4 数据库设计
4.4.1 概念模型
4.4.2 数据表
4.5 表access_token (登陆访问时长)
4.6 表article (文章:用于内容管理系统的文章)
4.7 表article_type (文章分类)
4.8 表auth (用户权限管理)
4.9 表collect (收藏)
4.10 表comment (评论)
4.11 表consolidation_after_class (课后巩固)
4.12 表course_teaching (课程教学)
4.13 表exam (考试)
4.14 表exam_question (试题)
4.15 表hits (用户点击)
4.16 表message_feedback (留言反馈)
4.17 表notice (公告)
4.18 表praise (点赞)
4.19 表preview_record (预习记录)
4.20 表slides (轮播图)
4.21 表student_users (学生用户)
4.22 表upload (文件上传)
4.23 表user (用户账户:用于保存用户登录信息)
4.24 表user_answer (用户答题)
4.25 表user_group (用户组:用于用户前端身份和鉴权)
第5章 系统实现
5.1 登录模块的实现
5.2 业主用户子系统模块的实现
5.2.1 业主用户首页模块
5.2.2 注册模块
5.2.3 课程教学模块
5.2.4 预习记录模块
5.2.5 校园资讯模块
5.2.6 留言反馈模块
5.3 管理员系统模块的实现
5.3.1 用户管理模块
5.3.2 公共管理模块
5.3.3 信息管理模块
5.3.4 课程教学模块
5.3.5 留言反馈模块
第6章 系统测试
6.1 测试目的
6.2 测试过程
6.3 测试结果
第7章 总结与展望
参考文献
致谢
- 开发现状
目前国内比较优秀的此类网站不胜枚举。它们主要包括了文库、图片库、下载中心等重要板块。分别为用户提供各类信息帮助,属于非常优秀的网络资源站。通过对这些优秀网站的学习研究为本设计提供了一个很好的参考平台。
第一章是绪论,本文章的开头部分,对本题目的研究背景和研究意义等一些做文字性的描述。
第二章研究了知识店铺平台小程序的所采用的开发技术和开发工具。
第三章是系统分析部分,包括系统总体需求描述、功能性角度分析系统需求、非功能性等各个方面分析系统是否可以实现。
第四章是系统设计部分,本文章的重要部分,提供了系统架构的详细设计和一些主要功能模块的设计说明。
- 相关技术介绍
- UNI-APP小程序框架
Uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。
DCloud公司拥有900万开发者、数百万应用、12亿手机端月活用户、数千款Uni-app插件、70+微信/qq群。阿里小程序工具官方内置Uni-app,腾讯课堂官方为Uni-app录制培训课程,开发者可以放心选择。
整个小程序框架系统分为两部分:逻辑层和视图层。小程序开发框架的目标是通过尽可能简单、高效的方式让开发者可以在微信中开发具有原生小程序 体验的服务。小程序在视图层与逻辑层间提供了数据传输和事件系统,提供了自己的视图层以及逻辑层框架,让开发者能够专注于数据与逻辑。框架的核心是一个响应的数据绑定系统,可以让数据与视图非常简单地保持同步。在逻辑层做数据修改,在视图层就会做相应的更新。
基于Java技术开发的B/S架构系统,需要借助Tomcat服务器应用程序进行部署运行[2]。用户访问系统的时候,通过浏览器向应用程序服务器端发起访问请求,服务器端的程序在接到用户请求以后,服务器端应用程序对客户请求做出相应,在调用服务器端的业务逻辑程序完成和数据库端的交互,进一步生成相应的HTML/XML数据,最终把结果反馈给浏览器端用户。
在该系统的开发中,开发模式采用B/S架构技术进行实现,通过部署服务器端应用程序,实现用户通过网站域名或者内网IP地址访问系统,实现系统中数据的动态化呈现和管理,加之页面效果的动态化呈现,不仅提升了页面的表现力,而且管理者可以随时更新系统中的各种信息,充分满足管理者和访问用户之间的信息交互。
- Springboot框架
Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。尽管Spring框架自身对编程模型没有限制,但其在Java应用中的频繁使用让它备受青睐,以至于后来让它作为EJB(EnterpriseJavaBeans)模型的补充,甚至是替补。Spring框架为开发提供了一系列的解决方案,比如利用控制反转的核心特性,并通过依赖注入实现控制反转来实现管理对象生命周期容器化,利用面向切面编程进行声明式的事务管理,整合多种持久化技术管理数据访问,提供大量优秀的Web框架方便开发等等。Spring框架具有控制反转(IOC)特性,IOC旨在方便项目维护和测试,它提供了一种通过Java的反射机制对Java对象进行统一的配置和管理的方法。Spring框架利用容器管理对象的生命周期,容器可以通过扫描XML文件或类上特定Java注解来配置对象,开发者可以通过依赖查找或依赖注入来获得对象。Spring框架具有面向切面编程(AOP)框架,SpringAOP框架基于代理模式,同时运行时可配置;AOP框架主要针对模块之间的交叉关注点进行模块化。Spring框架的AOP框架仅提供基本的AOP特性,虽无法与AspectJ框架相比,但通过与AspectJ的集成,也可以满足基本需求。
知识店铺平台小程序在对需求做解析后,整个系统主要分为两个部分:管理员和业主用户,每个模块下的分支功能不一样。对功能做出如下说明:
维护学生用户,审核学生用户的账号,可以冻结学生用户的登录权限,或者删除学生用户账号。
信息管理:对校园资讯、资讯分类、问卷调查进行增删改查等操作。
系统非功能需求有非常多,比如性能需求、可承载最大用户数、稳定性、易用性需求等。本系统分析时考虑到易用性需求,因为系统是给人使用的,所以必须充分从用户的角度出发,考虑用户体验,使系统易理解易上手易操作。
该模块是为所有用户登录设计的,如注册用户这种学生用户登录后只能进行自己的普通功能操作(如个人信息修改),管理员能对整个系统的数据进行管理,主要是用户的登录权限以及用户登录后在系统里的操作权限。
管理员点击校园资讯管理系统资讯,点击通知校园资讯添加子菜单,添加校园资讯数据,填写标题、内容、类别、图片,提交成功后,校园资讯数据页面刷新,新数据成功载入页面。
数据库逻辑结构就是将E-R图在数据库中用具体的字段进行描述。用字段和数据类型描述来使对象特征实体化,最后形成具有一定逻辑关系的数据库表结构。知识店铺平台小程序所需要的部分数据结构表如下表所示。
- 表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 |
用户编号: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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 |
文章描述 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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 |
更新时间: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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 |
更新时间: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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 |
更新时间: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
consolidation_after_class_id |
int |
10 |
0 |
N |
Y |
课后巩固ID |
|
2 |
course_cover |
varchar |
255 |
0 |
Y |
N |
课程封面 |
|
3 |
course_no |
varchar |
64 |
0 |
Y |
N |
课程编号 |
|
4 |
course_name |
varchar |
64 |
0 |
Y |
N |
课程名称 |
|
5 |
course_category |
varchar |
64 |
0 |
Y |
N |
课程类别 |
|
6 |
course_grade |
varchar |
64 |
0 |
Y |
N |
课程年级 |
|
7 |
student_no |
int |
10 |
0 |
Y |
N |
0 |
学生学号 |
8 |
student_name |
varchar |
64 |
0 |
Y |
N |
学生姓名 |
|
9 |
class_name |
varchar |
64 |
0 |
Y |
N |
班级名称 |
|
10 |
consolidation_date |
date |
10 |
0 |
Y |
N |
巩固日期 |
|
11 |
course_grading |
varchar |
64 |
0 |
Y |
N |
课程评分 |
|
12 |
course_evaluation |
varchar |
64 |
0 |
Y |
N |
课程评价 |
|
13 |
knowledge_point_description |
text |
65535 |
0 |
Y |
N |
知识点描述 |
|
14 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
15 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
16 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
course_teaching_id |
int |
10 |
0 |
N |
Y |
课程教学ID |
|
2 |
course_cover |
varchar |
255 |
0 |
Y |
N |
课程封面 |
|
3 |
course_no |
varchar |
64 |
0 |
Y |
N |
课程编号 |
|
4 |
course_name |
varchar |
64 |
0 |
Y |
N |
课程名称 |
|
5 |
course_category |
varchar |
64 |
0 |
Y |
N |
课程类别 |
|
6 |
course_grade |
varchar |
64 |
0 |
Y |
N |
课程年级 |
|
7 |
course_video |
varchar |
255 |
0 |
Y |
N |
课程视频 |
|
8 |
course_introduction |
text |
65535 |
0 |
Y |
N |
课程简介 |
|
9 |
hits |
int |
10 |
0 |
N |
N |
0 |
点击数 |
10 |
praise_len |
int |
10 |
0 |
N |
N |
0 |
点赞数 |
11 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
12 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
13 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
exam_id |
mediumint |
8 |
0 |
N |
Y |
考试id |
|
2 |
name |
varchar |
32 |
0 |
N |
N |
考试名称:[2,32] |
|
3 |
duration |
int |
10 |
0 |
Y |
N |
答题时长 |
|
4 |
score |
double |
9 |
2 |
Y |
N |
总分 |
|
5 |
status |
varchar |
10 |
0 |
Y |
N |
状态:启用、禁用 |
|
6 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
7 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
exam_question_id |
mediumint |
8 |
0 |
N |
Y |
||
2 |
type |
varchar |
20 |
0 |
Y |
N |
类型 |
|
3 |
title |
varchar |
255 |
0 |
Y |
N |
题目 |
|
4 |
question_item |
varchar |
500 |
0 |
Y |
N |
选项 |
|
5 |
answer |
varchar |
500 |
0 |
Y |
N |
参考答案 |
|
6 |
score |
double |
9 |
2 |
Y |
N |
总分 |
|
7 |
question_order |
int |
10 |
0 |
Y |
N |
排序 |
|
8 |
exam_id |
mediumint |
7 |
0 |
Y |
N |
所属试卷 |
|
9 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
10 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
message_feedback_id |
int |
10 |
0 |
N |
Y |
留言反馈ID |
|
2 |
theme |
varchar |
64 |
0 |
Y |
N |
主题 |
|
3 |
problem_type |
varchar |
64 |
0 |
Y |
N |
问题类型 |
|
4 |
student_no |
int |
10 |
0 |
Y |
N |
0 |
学生学号 |
5 |
student_name |
varchar |
64 |
0 |
Y |
N |
学生姓名 |
|
6 |
contact_information |
varchar |
64 |
0 |
Y |
N |
联系方式 |
|
7 |
message_content |
longtext |
2147483647 |
0 |
Y |
N |
留言内容 |
|
8 |
examine_state |
varchar |
16 |
0 |
N |
N |
未审核 |
审核状态 |
9 |
examine_reply |
varchar |
16 |
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 |
更新时间 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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 |
更新时间: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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已取消 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
preview_record_id |
int |
10 |
0 |
N |
Y |
预习记录ID |
|
2 |
course_cover |
varchar |
255 |
0 |
Y |
N |
课程封面 |
|
3 |
course_no |
varchar |
64 |
0 |
Y |
N |
课程编号 |
|
4 |
course_name |
varchar |
64 |
0 |
Y |
N |
课程名称 |
|
5 |
course_category |
varchar |
64 |
0 |
Y |
N |
课程类别 |
|
6 |
course_grade |
varchar |
64 |
0 |
Y |
N |
课程年级 |
|
7 |
student_no |
int |
10 |
0 |
Y |
N |
0 |
学生学号 |
8 |
student_name |
varchar |
64 |
0 |
Y |
N |
学生姓名 |
|
9 |
class_name |
varchar |
64 |
0 |
Y |
N |
班级名称 |
|
10 |
preview_date |
date |
10 |
0 |
Y |
N |
预习日期 |
|
11 |
knowledge_point_description |
text |
65535 |
0 |
Y |
N |
知识点描述 |
|
12 |
preview_notes |
text |
65535 |
0 |
Y |
N |
预习笔记 |
|
13 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
14 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
15 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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 |
更新时间: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
student_users_id |
int |
10 |
0 |
N |
Y |
学生用户ID |
|
2 |
student_no |
varchar |
64 |
0 |
N |
N |
学生学号 |
|
3 |
student_name |
varchar |
64 |
0 |
Y |
N |
学生姓名 |
|
4 |
student_gender |
varchar |
64 |
0 |
Y |
N |
学生性别 |
|
5 |
class_name |
varchar |
64 |
0 |
Y |
N |
班级名称 |
|
6 |
examine_state |
varchar |
16 |
0 |
N |
N |
已通过 |
审核状态 |
7 |
recommend |
int |
10 |
0 |
N |
N |
0 |
智能推荐 |
8 |
user_id |
int |
10 |
0 |
N |
N |
0 |
用户ID |
9 |
create_time |
datetime |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间 |
10 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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 |
文件类型 |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
1 |
user_answer_id |
mediumint |
8 |
0 |
N |
Y |
||
2 |
user_id |
mediumint |
7 |
0 |
N |
N |
用户ID:[0,8388607]用户获取其他与用户相关的数据 |
|
3 |
exam_id |
mediumint |
7 |
0 |
N |
N |
0 |
考试id |
4 |
score |
double |
9 |
2 |
Y |
N |
0.00 |
分数 |
5 |
answers |
text |
65535 |
0 |
Y |
N |
答案 |
|
6 |
score_detail |
text |
65535 |
0 |
Y |
N |
评分详情 |
|
7 |
objective_score |
double |
9 |
2 |
Y |
N |
0.00 |
客观题得分 |
8 |
subjective_score |
double |
9 |
2 |
Y |
N |
0.00 |
主观题得分 |
9 |
score_state |
tinyint |
4 |
0 |
Y |
N |
0 |
评分状态 |
10 |
nickname |
varchar |
255 |
0 |
Y |
N |
提交人 |
|
11 |
create_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
创建时间: |
12 |
update_time |
timestamp |
19 |
0 |
N |
N |
CURRENT_TIMESTAMP |
更新时间: |
编号 |
名称 |
数据类型 |
长度 |
小数位 |
允许空值 |
主键 |
默认值 |
说明 |
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 |
更新时间: |
系统的登录窗口是用户的入口,用户只有在登录成功后才可以进入访问。通过在登录提交表单,后台处理判断是否为合法用户,进行页面跳转,进入系统中去。
登录合法性判断过程:用户输入账号和密码后,系统首先确定输入输入数据合法性,然后在login.jsp页面发送登录请求,调用src下的mainctrl类的dopost方法来验证。
2)从数据库中提取记录,并储存在本地的session中(timeout默认=30min)。
首页主要分别展示各个模块的最新动态,浏览者可以很清楚地看到不同模块的最新更新内容。并且系统首页每个部分可以跳转到相对应的模块,方便浏览者选择感兴趣的地方。如下图所示为客户端的首页界面。
此页面实现业主用户的注册,必须注册登录后才能使用系统大部分功能,用户名不允许重复如果重复将会注册失败,并弹出相应的提示,通过js实现对输入的验证。
课程教学,在此页面可以查看课程编号、课程名称、课程年级、课程类别等信息,并进行点赞、评论、收藏等操作。课程教学界面如图所示。
- 预习记录模块
预习记录,在此页面可以查看课程封面、课程编号等信息,并进行记录等操作。预习记录界面如图所示。
图5-8预习记录界面
- 校园资讯模块
校园资讯,在此页面可以查看标题、图片、发布时间等信息,并进行点赞、收藏、发表评论等操作。校园资讯界面如图所示。
图5-9校园资讯界面
- 留言反馈模块
留言反馈,在此页面可以填写主题、问题类型、学生姓名、联系方式、留言内容等信息,并进行提交等操作。留言反馈界面如图所示。
图5-10留言反馈界面
管理员登录系统后,可以查看到主页、个人资料(个人信息、修改密码)、公共管理(轮播图、公告)、用户管理(管理员、学生用户)、信息管理(校园资讯、资讯分类、问卷调查)课程教学、预习记录、课后巩固、留言反馈等功能。
管理员功能界面如下图所示。
图5-11管理员功能界面
- 用户管理模块
用户在yhzhgl查看用户信息,先使用sql语句查询出所有用户表的数据,然后调用PageManager.getPages(url,4,sql, request ),返回一个ArrayList的对象,在for循环里,使用jsp得到每个ArrayList对象的数据,在jsp页面中解析ArrayList对象,得到其各个键值对的值。
用户管理界面如下图所示。
图5-12用户管理界面
轮播图,可以在此页面查看标题轮播图等信息,进行查询、重置、删除、新增等操作。
公告,可以在此页面查看标题、新增时间、更新时间等信息,进行查询、重置、删除、新增等操作。
信息管理,在此页面可以看到有校园资讯、资讯分类、问卷调查三个子模块,并进行查询、重置、删除、新增等操作。
课程教学,在此页面可以看到课程封面、课程编号、课程名称、课程类别、课程年级、课程视频等信息,并进行查询、重置、删除、新增等操作,课程教学界面如下图所示。
留言反馈,在此页面可以看到主题、问题类型、学生学号、学生姓名、联系方式、审核状态等信息,并进行查询、重置、删除、新增、审核回复等操作,留言反馈界面如下图所示。
在对该系统进行完详细设计和编码之后,就要对知识店铺平台小程序的程序进行测试,检测程序是否运行无误,反复进行测试和修改,使之最后成为完整的软件,满足用户的需求,实现预期的功能。
测试性能 |
新用户注册 |
||
用例目的 |
测试系统新用户个人信息注册功能的功能和安全性 |
||
前提条件 |
进入注册页面填写个人信息 |
||
输入条件 |
预期输出 |
实际情况 |
|
各项基本信息输入不完整 |
不允许注册,无法点击注册按钮 |
一致 |
|
填写已存在的用户名 |
系统显示出提示信息,要求重新填写 |
一致 |
|
两次密码输入不一致 |
系统显示出提示信息,要求重新填写 |
一致 |
|
填写的各项信息没有符合提示的长度和字符要求 |
系统显示出提示信息,要求重新填写 |
一致 |
|
胡乱填写电话号码 |
收不到验证码 |
一致 |
|
填写验证码与收到的不一致 |
系统显示提示信息告知用户验证码错误,不予注册 |
一致 |
测试性能 |
用户或操作员登录系统 |
||
用例目的 |
测试用户或操作员登录系统时功能是否正常 |
||
前提条件 |
进入用户登录页面或操作员登录页面 |
||
输入条件 |
预期输出 |
实际情况 |
|
各项信息不予填写,直接点击登陆按钮 |
不允许登录,提示填写账号相关信息 |
一致 |
|
填写错误的登录名或密码后点击登录系统 |
提示用户名或密码错误,要求重新填写进行登录 |
一致 |
|
填写与验证码信息不一致的信息 |
系统显示出提示信息,表明验证码错误,要求重新填写 |
一致 |
本次系统上线成功后,得到了用户的高度认可,但是在功能上和性能上还需做进一步的研究处理,使其有更高的性能和更好的用户体验。
系统在以后的升级过程中,需要解决一系列用户所提出的问题,例如打印过程中如何避免浏览器的兼容性问题,大量用户访问时,如何保持较高的响应速度,在系统今后的升级过程中将着重解决这些安全性问题。
参考文献
[1]倪改玲,王会霞,邹超,单煜景. “急救课堂”微信小程序的设计与开发[J]. 中国医学教育技术,2022,36(06):670-674.
[2]Yu Yang. Design and Implementation of Student Information Management System Based on Springboot[J]. Advances in Computer, Signals and Systems,2022,6(6).
[3]徐路城,唐珂驿,孙大勇. 基于中医药知识的微信小程序设计与开发[J]. 电脑知识与技术,2022,18(27):50-52.
[4]王斌. 基于微信小程序的信息技术课程教学平台的设计与应用[D].广东技术师范大学,2022.
[5]张欣. 基于知识图谱的个性化学习微信小程序设计与开发[D].华中师范大学,2022.
[6]吴璇,徐源,宋亦兵. 微信小程序在学科知识发现中的应用实践[J]. 电脑知识与技术,2021,17(26):74-78.
[7]梁骁. 基于微信小程序的移动学习平台建设与应用研究[D].牡丹江师范学院,2021.
[8]林钊然. 互联网背景下古籍知识平台移动端设计研究[D].华南理工大学,2021.
[9]Guanhong Chen,Jiangming Xu. Design and implementation of efficient Learning platform based on SpringBoot Framework[J]. Journal of Electronics and Information Science,2020,6(1).
[10]Jian Chen,Chen Jian,Pan Hailan. Design of Man Hour Management Information System on SpringBoot Framework[J]. Journal of Physics: Conference Series,2020,1646(1).
[11]郭君彦. 基于Django框架的校园知识共享平台的设计与实现[D].首都经济贸易大学,2020.
[12]吕翠莲. 作业辅导微信小程序的开发及教学应用研究[D].云南大学,2020.
[13]王延桃. 基于微信小程序的词汇学习平台设计与实现[D].云南师范大学,2020.
[14]李敏. 基于微信小程序的博物馆电子学习单开发研究[D].上海师范大学,2020.
[15]马上为. 微信小程序支持的初中英语词汇自主学习活动研究[D].渤海大学,2020.
[16]韩顺顺. 微信小程序在初中物理实验翻转课堂中的应用[D].天津师范大学,2020.
[17]陆禹文. 基于微信小程序的移动学习平台的设计、开发及应用[D].兰州大学,2020.
[18]Kan Ji,Xiaojun Chen,Aoming Qin,Jia Liu,Jinmei Wu. Design and Implementation of Teaching Quality Evaluation System Based on SpringBoot[A]. 西南石油大学(Southwest Petroleum University).第七届计算与信息科学国际学术会议论文集[C].西南石油大学(Southwest Petroleum University):西南石油大学计算机科学学院,2019:444-452.
[19]薛锡雅. 基于微信小程序的智慧教学平台“WECO课堂”的设计开发与应用研究[D].深圳大学,2019.
[20]Shufan Liu,Ximei Li,Peng Sun. Design and Implementation of Communication Base Station Survey System based on Springboot[A]. 香港新世纪文化出版社(Hongkong New Century Cultural Publishing House).2018年智慧教育与人工智能发展学术会议论文集(第一部分)[C].香港新世纪文化出版社(Hongkong New Century Cultural Publishing House):香港新世纪文化出版社有限公司,2018:34-36.
致谢
伴随着设计的完成,大学生涯也随之即将结束。大学期间是我最珍惜的时光,大学时光中学会了很多,也成长了很多,这段时光中每一段回忆都刻在脑海中。感谢一起学习,一起成长同学们,和成长过程悉心教导的老师们,非常感激有你们的陪伴。
首先感谢我的指导老师,设计的完成离不开老师的一系列指导。在毕业设计的完成过程中,老师给出了很多中肯的建议,正是由于老师一丝不苟的工作态度,我的设计才能顺利的完成。
最后,感谢在大学生涯中每一位教导我的老师,是你们教给了我丰富的知识,更教会了我遇到问题时,如何去应对并解决。谢谢你们的帮助与支持。
免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~
springboot+mysql+微信小程序知识店铺平台-计算机毕业设计源码17094相关推荐
- springboot+mysql+微信小程序点餐系统-计算机毕业设计源码65933
摘 要 点餐系统小程序采用B/S模式.采用JAVA语言.SSM框架.mysql数据库.小程序框架uniapp等开工具.促进了点餐系统小程序的业务发展.与传统线下点餐相比,点餐微信小程序不但节省了商家 ...
- springboot+mysql+微信小程序社区共享书屋-计算机毕业设计源码03656
目 录 摘要 1 绪论 1.1 研究背景及意义 1.2国内外研究现状 1.3系统开发的内容 1.4论文结构与章节安排 1.5小程序框架以及目录结构介绍 2社区共享书屋小程序系统分析 2.1 可行性分 ...
- SSM+mysql+微信小程序超市外卖系统-计算机毕业设计源码97313
摘 要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,超市外卖系统小程序被用户普遍使用,为方便用户 ...
- springboot基于微信小程序的校园外卖系统毕业设计源码091024
Springboot基于微信小程序的校园外卖系统 摘要 随着生活质量的日益改善以及生活节奏的日益加快,人们对餐饮需求的质量以及速度也随之发生着变化.为了满足社会需求,餐饮的高质量和快节奏也渐渐使电话订 ...
- 基于JAVA法律知识分享平台计算机毕业设计源码+系统+数据库+lw文档+部署
基于JAVA法律知识分享平台计算机毕业设计源码+系统+数据库+lw文档+部署 基于JAVA法律知识分享平台计算机毕业设计源码+系统+数据库+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语 ...
- 基于微信小程序的加油服务系统毕业设计源码
目录 一.程序介绍: 三.文档目录: 四.运行截图: 五.数据库表: 六.代码展示: 七.更多学习目录: 八.互动留言 一.程序介绍: 文档:开发技术文档.参考LW.答辩PPT,部分项目另有其他文档 ...
- springboot+微信小程序老年人健康保障管理系统毕业设计源码302303
基于springboot微信小程序的老年人健康保障管理系统 摘 要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是 ...
- Springboot健康饮食小程序的设计的实现毕业设计源码280920
健康饮食小程序的设计与实现 摘 要 本文设计了一种基于微信小程序的健康饮食小程序小程序,系统为人们提供了方便快捷.即用即搜的健康食谱服务,包括健康食谱,医疗资讯.注册登录等,用户能够方便快捷地查看资讯 ...
- node.js基于微信小程序的校园失物招领毕业设计源码072343
微信小程序的校园失物招领系统 摘 要 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,微信小程序的校 ...
最新文章
- js中cookie的使用详细分析
- AGC022E - Median Replace
- LeetCode 384. 打乱数组(rand)
- C++通过系统版本号获取windows系统版本
- 谷歌了java集成开发_Spring整合Kaptcha谷歌验证码工具的开发步骤
- Mac键盘突然停止响应如何处理
- unity自带的方法
- 网上阅卷系统php源码,又开源了,网上阅卷系统自动识别功能代码 | 学步园
- dlna和miracast可以共存吗_解决播放网络视频卡顿及DLNA和Miracast容易掉线的方法
- Viterbi算法(维特比算法)
- 【Unity3D插件】AnyPortrait插件分享《(一)制作史莱姆动画》
- php语言简述_PHP语言的简介
- 高端存储未来之路在哪?VSP 5000系列带来新答案
- 数模2019暑期培训Day1
- 友情链接SEO工具检测不出来
- 对Python【返回函数与闭包】的一点思考
- 3705-26-8,cyclo(Phe-Pro),CYCLO-L-PHENYLALANYL-L-PROLINE,Einecs 223-047-0
- 【优化算法】多目标灰狼优化算法(MOGWO)【含Matlab源码 099期】
- Linux笔记 系统安装、网络设置、远程连接、密钥认证、克隆、互联
- Python基础知识-pycharm版-02
热门文章
- linux insmod 权限,Linux中insmod命令起什么作用呢?
- 使用particles.js制造粒子特效
- CAA-二次开发给几何图形集添加参数
- 选购支持“来电显示”的“猫”
- [GKCTF2020]EZ三剑客-EzNode
- Photoshop网页切片
- 美赛数据(国内外灾害数据库汇总)-数学建模(十八)
- 乐心湖‘s Blog——MySQL入门到精通 —— 囊括 MySQL 入门 以及 SQL 语句优化 —— 索引原理 —— 性能分析 —— 存储引擎特点以及选择 —— 面试题
- Labelme鼠标轨迹跟踪标注软件
- 郑州海关销毁近2万张“问题地图” 重约5.3吨