springboot知识店铺平台小程序 计算机专业毕业设计源码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章 总结与展望

参考文献

致谢

  1. 绪论
    1. 研究背景与意义

随着网络的快速发展,人们已经进入了信息时代,人们获得信息并进行相关信息的交流已经不只是停留在报纸、电视、收音机广播等传统媒体,特别是知识店铺问题,更需要不断更新与大量知识信息。如果能够开发并提供一个专门为知识的平台,这样用户就能快速有效的获得相关信息。因此本课题的选择具有一定实践意义。

我国对知识店铺的研究主要形成于二十世纪末期。随着社会对人才大量的需求逐渐凸显,我国对知识店铺的建设能力略显陈旧,难以满足当下的问题。我国研究主要从以往的经验入手,对知识店铺进行探索、研究相关管理以及存储方法。直到近些年,有些学者在着眼于它的发展产生了较多的关注并进行了相关的学术研究,有关论文,逐年递增,使我们对知识店铺系统了解更加深刻。

因此,开发符合现代的知识店铺平台小程序很有意义。

    1. 开发现状

目前国内比较优秀的此类网站不胜枚举。它们主要包括了文库、图片库、下载中心等重要板块。分别为用户提供各类信息帮助,属于非常优秀的网络资源站。通过对这些优秀网站的学习研究为本设计提供了一个很好的参考平台。

    1. 本文的组织结构

第一章是绪论,本文章的开头部分,对本题目的研究背景和研究意义等一些做文字性的描述。

第二章研究了知识店铺平台小程序的所采用的开发技术和开发工具。

第三章是系统分析部分,包括系统总体需求描述、功能性角度分析系统需求、非功能性等各个方面分析系统是否可以实现。

第四章是系统设计部分,本文章的重要部分,提供了系统架构的详细设计和一些主要功能模块的设计说明。

第五章是系统的具体实现,介绍系统的各个模块的具体实现。

第六章是系统测试,系统编码实现后,需要进行测试,通过输入不同组的测试数据进行测试的功能模块测试。

最后对系统进行了认真的总结,以此对未来有一个新的展望。

  1. 相关技术介绍
    1. UNI-APP小程序框架

Uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。

DCloud公司拥有900万开发者、数百万应用、12亿手机端月活用户、数千款Uni-app插件、70+微信/qq群。阿里小程序工具官方内置Uni-app,腾讯课堂官方为Uni-app录制培训课程,开发者可以放心选择。

整个小程序框架系统分为两部分:逻辑层视图层。小程序开发框架的目标是通过尽可能简单、高效的方式让开发者可以在微信中开发具有原生小程序 体验的服务。小程序在视图层与逻辑层间提供了数据传输和事件系统,提供了自己的视图层以及逻辑层框架,让开发者能够专注于数据与逻辑。框架的核心是一个响应的数据绑定系统,可以让数据与视图非常简单地保持同步。在逻辑层做数据修改,在视图层就会做相应的更新。

    1. MySQL数据库

科技的进步,给日常带来许多便利:教室的投影器用到了虚拟成像技术,数码相机用到了光电检测技术,比如超市货物进出库的记录需要一个信息仓库。这个信息仓库就是数据库,而这次的知识店铺平台小程序也需要这项技术的支持。

用MySQL这个软件,是因为它能接受多个使用者访问,而且里面存在Archive等。它会先把数据进行分类,然后分别保存在表里,这样的特别操作就会提高数据管理系统自身的速度,让数据库能被灵活运用。MySQL的代码是公开的,而且允许别人二次编译升级。这个特点能够降低使用者的成本,再搭配合适的软件后形成一个良好的网站系统。虽然它有缺点,但是综合各方面来说,它是使用者的主流运用的对象。

    1. B/S结构

基于Java技术开发的B/S架构系统,需要借助Tomcat服务器应用程序进行部署运行[2]。用户访问系统的时候,通过浏览器向应用程序服务器端发起访问请求,服务器端的程序在接到用户请求以后,服务器端应用程序对客户请求做出相应,在调用服务器端的业务逻辑程序完成和数据库端的交互,进一步生成相应的HTML/XML数据,最终把结果反馈给浏览器端用户。

在该系统的开发中,开发模式采用B/S架构技术进行实现,通过部署服务器端应用程序,实现用户通过网站域名或者内网IP地址访问系统,实现系统中数据的动态化呈现和管理,加之页面效果的动态化呈现,不仅提升了页面的表现力,而且管理者可以随时更新系统中的各种信息,充分满足管理者和访问用户之间的信息交互。

    1. 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的集成,也可以满足基本需求。

  1. 系统分析
    1. 可行性分析
      1. 技术可行性分析

技术上使用Springboot+Java+MySQL的架构实现,从技术本身的角度上讲已经相当成熟,不需要考虑其本身的问题,从服务器流量以及并发的角度上讲,由于系统面向的群体为学生人群,用户群体适中,根据服务器和计算能力的发展现状来看不会成为系统不利因素。在对这个系统评估后,认定已存在的技术能达成目标。嵌入低依赖性的设计模式,灵活的数据库,配合稳定的服务器,整个系统的运行效率大大提升。由此可见,在技术层面达成目标不是非非之想。

      1. 经济可行性分析

知识店铺平台小程序是服务端基于B/S模式、java技术,客户端采用Uni-app 、采用Mysql数据库储存数据,所要求的硬件和软件环境,市场上都很容易购买,程序开发主要是管理系统的开发和维护。所以程序在开发人力、财力上要求不高,而且此系统不是很复杂,开发周期短,在经济方面具有较高的可行性。

      1. 操作可行性分析

本系统实现功能的操作很简单,普通电脑的常见配置就可以运行本软件,并且只要粗通电脑使用的基本常识就可以流畅的使用本软件。电脑具备连接互联网的能力,并且可以正常访问系统,并不需要操作者有什么高超的能力,只需了解业务流程,并且按照专业知识进行正确操作即可,所以知识店铺平台小程序具备操作可行性。

    1. 功能需求分析

在系统开发设计前,应该对功能做初步设想,清楚这个管理系统有什么板块,每个板块有什么功能,整体的设计是否满足使用者的需求,接着对所开发的系统功能进行的详细分析总结,从而设计出完整的系统并将其实现。用户和开发人员的交流分析,使其达到最佳理解程度,使系统功能达到最佳。

学生用户用例图如下所示。

图3-1 学生用户用例图

管理员用例图如下所示。

图3-2 管理员用例图

知识店铺平台小程序在对需求做解析后,整个系统主要分为两个部分:管理员和业主用户,每个模块下的分支功能不一样。对功能做出如下说明:

学生用户模块:

账号注册。

账号登录认证。

管理基本信息,修改可修改的信息项。

校园资讯:可以对校园资讯进行查看。

课程教学:对课程进行学习。

课后巩固:可以对课程进行巩固。

留言反馈:对此页面可以反馈信息。

管理员模块:

维护学生用户,审核学生用户的账号,可以冻结学生用户的登录权限,或者删除学生用户账号。

公共管理:对轮播图、公告信息进行增删改查等操作。

信息管理:对校园资讯、资讯分类、问卷调查进行增删改查等操作。

留言反馈:对留言反馈进行回复等操作。

    1. 非功能需求分析

系统非功能需求有非常多,比如性能需求、可承载最大用户数、稳定性、易用性需求等。本系统分析时考虑到易用性需求,因为系统是给人使用的,所以必须充分从用户的角度出发,考虑用户体验,使系统易理解易上手易操作。

    1. 数据流程分析

一层数据流程图包括了登录注册、学生用户功能和检索维护等模块,在登录注册模块使用到的数据存储有用户账户文档,学生用户功能模块需要的存储是学生用户各功能模块数据文档,检索维护是使用以上这些数据文档通过关键词进行检索。

系统的一层数据流图如下图所示。

图3-2系统数据流图(一层)

二层数据流程是对一层数据流层图中填写登录注册信息、用户功能的细化。即:填写登录注册信息细化为填制信息、后台审核,用户功能细化为校园资讯、资讯分类、问卷调查、课程教学、预习记录、课后巩固、留言反馈等操作。

  1. 系统设计
    1. 系统架构设计

目前B/S体系的系统主要的数据访问方式是:通过浏览器页面用户可以进入系统,系统可以自动对用户向服务器发送的请求进行处理,处理请求是在系统后台中进行的,用户在浏览器页面上进行相应操作,就能够看到服务端传递的处理结果。知识店铺平台小程序主要分为视图-模型-控制三层架构设计。在视图层中,主要是操作在服务器端向客户端反馈并显示的数据,在模型层中,主要处理相关的业务逻辑、数据整合等,最后的控制层它介于视图和模型之间,主要是调整两层之间的关系,最终落实数据的传递。

系统架构图如下图所示。

图4-1系统架构图

    1. 系统功能结构

系统设计的目的是分析系统包括的所有功能结构,为开发人员设计开发和实现系统做好准备工作。经过前期的需求调查、分析和整理之后,确定的总体需求主要包括多个模块,分别是:个人资料(个人信息、修改密码)、公共管理(轮播图、公告)、用户管理(管理员、学生用户)、信息管理(校园资讯、资讯分类、问卷调查)课程教学、预习记录、课后巩固、留言反馈。系统整体角色分为二个部分,一是学生用户、二是管理员。权限分布也是很明显,学生用户是在除去浏览信息之外还具有查询和管理自己账户信息、课程教学、问卷调查、收藏、预习记录、课后巩固、留言反馈等权限;管理员是最高权限拥有者。

系统功能结构图如下图所示。

图4-2系统功能结构图

    1. 功能模块设计

用户管理模块

该模块是为所有用户登录设计的,如注册用户这种学生用户登录后只能进行自己的普通功能操作(如个人信息修改),管理员能对整个系统的数据进行管理,主要是用户的登录权限以及用户登录后在系统里的操作权限。

校园资讯维护模块

管理员点击校园资讯管理系统资讯,点击通知校园资讯添加子菜单,添加校园资讯数据,填写标题、内容、类别、图片,提交成功后,校园资讯数据页面刷新,新数据成功载入页面。

    1. 数据库设计
      1. 概念模型

对于一个要开发的系统来说,E-R图可以让别人能更快更轻松的了解此系统的事务及它们之间的关系。根据系统分析阶段所得出的结论确定了在知识店铺平台小程序中存在着多个实体分别是用学生用户、管理员、课程、校园资讯、留言反馈。

系统总体ER图如下图所示。

图4-4系统总体ER图

      1. 数据表

数据库逻辑结构就是将E-R图在数据库中用具体的字段进行描述。用字段和数据类型描述来使对象特征实体化,最后形成具有一定逻辑关系的数据库表结构。知识店铺平台小程序所需要的部分数据结构表如下表所示。

    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

用户编号:

    1. 表article (文章:用于内容管理系统的文章)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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. 表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

更新时间:

    1. 表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

更新时间:

    1. 表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

更新时间:

    1. 表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:

    1. 表consolidation_after_class (课后巩固)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (课程教学)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (考试)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (试题)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (留言反馈)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (点赞)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (预习记录)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (轮播图)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (学生用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (文件上传)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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 (用户账户:用于保存用户登录信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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

创建时间:

    1. 表user_answer (用户答题)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

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. 表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

更新时间:

  1. 系统实现
    1. 登录模块的实现

系统的登录窗口是用户的入口,用户只有在登录成功后才可以进入访问。通过在登录提交表单,后台处理判断是否为合法用户,进行页面跳转,进入系统中去。

登录合法性判断过程:用户输入账号和密码后,系统首先确定输入输入数据合法性,然后在login.jsp页面发送登录请求,调用src下的mainctrl类的dopost方法来验证。

用户登录模块的IPO如下所示:

输入:用户名和密码。

处理:

1)检测用户输入的账号、密码是否正确及在数据库已对应存在。

2)从数据库中提取记录,并储存在本地的session中(timeout默认=30min)。

3)根据用户名,将其显示在系统首页上。

输出:是否成功的信息。

登录流程图如下所示。

图5-1登录流程图

系统登录界面如下所示。

图5-2系统登录界面

    1. 业主用户子系统模块的实现
      1. 业主用户首页模块

首页主要分别展示各个模块的最新动态,浏览者可以很清楚地看到不同模块的最新更新内容。并且系统首页每个部分可以跳转到相对应的模块,方便浏览者选择感兴趣的地方。如下图所示为客户端的首页界面。

图5-3客户端首页界面

      1. 注册模块

此页面实现业主用户的注册,必须注册登录后才能使用系统大部分功能,用户名不允许重复如果重复将会注册失败,并弹出相应的提示,通过js实现对输入的验证。

用户注册流程图如下所示。

图5-4用户注册流程图

用户注册界面如图所示。

图5-5用户注册界面

      1. 课程教学模块

课程教学,在此页面可以查看课程编号、课程名称、课程年级、课程类别等信息,并进行点赞、评论、收藏等操作。课程教学界面如图所示。

图5-6课程教学列表界面

课程教学详细界面如图所示。

图5-7课程教学详细界面

      1. 预习记录模块

预习记录,在此页面可以查看课程封面、课程编号等信息,并进行记录等操作。预习记录界面如图所示。

图5-8预习记录界面

      1. 校园资讯模块

校园资讯,在此页面可以查看标题、图片、发布时间等信息,并进行点赞、收藏、发表评论等操作。校园资讯界面如图所示。

图5-9校园资讯界面

      1. 留言反馈模块

留言反馈,在此页面可以填写主题、问题类型、学生姓名、联系方式、留言内容等信息,并进行提交等操作。留言反馈界面如图所示。

图5-10留言反馈界面

    1. 管理员系统模块的实现

管理员登录系统后,可以查看到主页、个人资料(个人信息、修改密码)、公共管理(轮播图、公告)、用户管理(管理员、学生用户)、信息管理(校园资讯、资讯分类、问卷调查)课程教学、预习记录、课后巩固、留言反馈等功能。

管理员功能界面如下图所示。

图5-11管理员功能界面

      1. 用户管理模块

用户在yhzhgl查看用户信息,先使用sql语句查询出所有用户表的数据,然后调用PageManager.getPages(url,4,sql, request ),返回一个ArrayList的对象,在for循环里,使用jsp得到每个ArrayList对象的数据,在jsp页面中解析ArrayList对象,得到其各个键值对的值。

用户管理界面如下图所示。

图5-12用户管理界面

      1. 公共管理模块

轮播图,可以在此页面查看标题轮播图等信息,进行查询、重置、删除、新增等操作。

轮播图界面如下所示。

图5-13轮播图界面

公告,可以在此页面查看标题、新增时间、更新时间等信息,进行查询、重置、删除、新增等操作。

公告界面如下所示。

图5-14公告界面

      1. 信息管理模块

信息管理,在此页面可以看到有校园资讯、资讯分类、问卷调查三个子模块,并进行查询、重置、删除、新增等操作。

校园资讯界面如下图所示。

图5-15校园资讯界面

资讯分类界面如下图所示。

图5-16资讯分类界面

问卷调查界面如下图所示。

图5-17问卷调查界面

      1. 课程教学模块

课程教学,在此页面可以看到课程封面、课程编号、课程名称、课程类别、课程年级、课程视频等信息,并进行查询、重置、删除、新增等操作,课程教学界面如下图所示。

图5-18课程教学界面

新增课程教学界面如下图所示。

图5-19新增课程教学界面

      1. 留言反馈模块

留言反馈,在此页面可以看到主题、问题类型、学生学号、学生姓名、联系方式、审核状态等信息,并进行查询、重置、删除、新增、审核回复等操作,留言反馈界面如下图所示。

图5-20留言反馈界面

系统测试

  1. 测试目的

在对该系统进行完详细设计和编码之后,就要对知识店铺平台小程序的程序进行测试,检测程序是否运行无误,反复进行测试和修改,使之最后成为完整的软件,满足用户的需求,实现预期的功能。

    1. 测试过程

在软件的测试过程中,通常测试人员需要针对不同的功能模块设计多种测试用例。通过测试用例能够及时发现代码业务逻辑上是否与真实的业务逻辑相对应,及时发现代码上或逻辑上的缺陷,以此来来完善系统,提高软件产品的质量,使软件具有良好的用户体验。

注册测试用例表如下所示。

表6-1注册测试用例

测试性能

新用户注册

用例目的

测试系统新用户个人信息注册功能的功能和安全性

前提条件

进入注册页面填写个人信息

输入条件

预期输出

实际情况

各项基本信息输入不完整

不允许注册,无法点击注册按钮

一致

填写已存在的用户名

系统显示出提示信息,要求重新填写

一致

两次密码输入不一致

系统显示出提示信息,要求重新填写

一致

填写的各项信息没有符合提示的长度和字符要求

系统显示出提示信息,要求重新填写

一致

胡乱填写电话号码

收不到验证码

一致

填写验证码与收到的不一致

系统显示提示信息告知用户验证码错误,不予注册

一致

登录测试用例表如下所示。

表6-2登录测试用例

测试性能

用户或操作员登录系统

用例目的

测试用户或操作员登录系统时功能是否正常

前提条件

进入用户登录页面或操作员登录页面

输入条件

预期输出

实际情况

各项信息不予填写,直接点击登陆按钮

不允许登录,提示填写账号相关信息

一致

填写错误的登录名或密码后点击登录系统

提示用户名或密码错误,要求重新填写进行登录

一致

填写与验证码信息不一致的信息

系统显示出提示信息,表明验证码错误,要求重新填写

一致

    1. 测试结果

经过对此系统的测试,得出该系统足以满足用户日常需求,在功能项目和操作等方面也能满足操作员对于其他用户的管理。但是,还有很多功能有待添加,这个系统仅能满足大部分的需求,还需要对此系统的功能更进一步的完善,这样使用起来才能更加的完美。

  1. 总结与展望

通过知识店铺平台小程序的开发,本人巩固了之前学过的知识,如今将平时所学到的知识融合在设计中,在设计过程中,做了很多的准备,首先,在数据库系统的设计过程中,尤其是在数据库的工作原理、工作特点,对其深刻的讨论,与此同时,对于小型站点来说,最好服务器的选择,其次,利用所学的知识点分析所做的系统,并在此基础上设计。

目前本系统已经上线,正在试运行阶段,用户反馈良好,基本完成用户所需,试运行过程中没有出现阻断性问题,有一些不足和小问题也及时予以修正,系统上线后,为了保证数据的安全性,对系统进行了备份操作,系统备份是每两个月备份一次,数据库备份为每周备份一次,系统部署在租赁的云平台服务器中。

本次系统上线成功后,得到了用户的高度认可,但是在功能上和性能上还需做进一步的研究处理,使其有更高的性能和更好的用户体验。

系统在以后的升级过程中,需要解决一系列用户所提出的问题,例如打印过程中如何避免浏览器的兼容性问题,大量用户访问时,如何保持较高的响应速度,在系统今后的升级过程中将着重解决这些安全性问题。

参考文献

[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.

                                                               致谢

伴随着设计的完成,大学生涯也随之即将结束。大学期间是我最珍惜的时光,大学时光中学会了很多,也成长了很多,这段时光中每一段回忆都刻在脑海中。感谢一起学习,一起成长同学们,和成长过程悉心教导的老师们,非常感激有你们的陪伴。

首先感谢我的指导老师,设计的完成离不开老师的一系列指导。在毕业设计的完成过程中,老师给出了很多中肯的建议,正是由于老师一丝不苟的工作态度,我的设计才能顺利的完成。

最后,感谢在大学生涯中每一位教导我的老师,是你们教给了我丰富的知识,更教会了我遇到问题时,如何去应对并解决。谢谢你们的帮助与支持。

                                             免费领取源码,请点赞关注私信博主

  • 17
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值