基于springboot的在线教育系统(源码+论文)

一、开发环境

本在线教育系统主要采用以下技术栈进行开发:

  • B/S结构:基于浏览器/服务器模式,便于用户通过互联网访问系统,无需安装客户端软件。
  • Spring Boot框架:简化了新Spring应用的初始搭建及开发过程,提高了开发效率。
  • MYSQL数据库:作为关系型数据库管理系统,具有功能强大、使用简单、管理方便等特点,为系统提供稳定的数据存储支持。

二、系统概要设计

1 概述

本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图1所示:

2 系统结构

本系统是基于B/S架构的网站系统,设计的功能结构图如下图所示:

3 数据库设计

3.1 数据库实体

本系统的E-R图展示了各个实体及其属性之间的关系,包括管理员、课程、用户等实体。

  • 管理员信息实体属性图
  • 课程信息实体属性图
  • 用户信息实体属性图

3.2 数据库设计表

在线教育系统需要后台数据库,下面介绍数据库中的各个表的详细信息:

表1 地址

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
userid bigint(20) 用户id
address varchar(200) 地址
name varchar(200) 收货人
phone varchar(200) 电话
isdefault varchar(200) 是否默认地址[是/否]

表2 购物车表

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
tablename varchar(200) kecheng 商品表名
userid bigint(20) 用户id
goodid bigint(20) 商品id
goodname varchar(200) NULL 商品名称
picture varchar(200) NULL 图片
buynumber int(11) 购买数量
price float NULL 单价
discountprice float NULL 会员价

表3 教师评论表

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
refid bigint(20) 关联表id
userid bigint(20) 用户id
nickname varchar(200) NULL 用户名
content longtext 评论内容
reply longtext NULL 回复内容

表4 课程评论表

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
refid bigint(20) 关联表id
userid bigint(20) 用户id
nickname varchar(200) NULL 用户名
content longtext 评论内容
reply longtext NULL 回复内容

表5 名师评论表

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
refid bigint(20) 关联表id
userid bigint(20) 用户id
nickname varchar(200) NULL 用户名
content longtext 评论内容
reply longtext NULL 回复内容

表6 讲师

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
jiangshigonghao varchar(200) 讲师工号
mima varchar(200) 密码
jiangshixingming varchar(200) 讲师姓名
xingbie varchar(200) NULL 性别
nianling varchar(200) NULL 年龄
touxiang varchar(200) NULL 头像
lianxidianhua varchar(200) NULL 联系电话
jiangshiyouxiang varchar(200) NULL 讲师邮箱
money float 0 余额

表7 教师

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
jiangshigonghao varchar(200) NULL 讲师工号
jiangshixingming varchar(200) NULL 讲师姓名
xingbie varchar(200) NULL 性别
touxiang varchar(200) NULL 头像
huojiangzhengshu longtext NULL 获奖证书
suoshudanwei varchar(200) NULL 所属单位
jiaoshoukecheng varchar(200) NULL 教授课程
xiangxixinxi longtext NULL 详细信息

表8 课程

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
kechengbianhao varchar(200) NULL 课程编号
kechengmingcheng varchar(200) NULL 课程名称
suoshufenlei varchar(200) NULL 所属分类
keshishu int(11) NULL 课时数
suoshujiangshi varchar(200) NULL 所属讲师
kechengfengmian varchar(200) NULL 课程封面
suoshudaxue varchar(200) NULL 所属大学
kechengshipin varchar(200) NULL 课程视频
kechengdagang longtext NULL 课程大纲
kechengxiangqing longtext NULL 课程详情
clicktime datetime NULL 最近点击时间
clicknum int(11) 0 点击次数
price float 价格

表9 课程分类

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
fenlei varchar(200) NULL 分类

表10 课程管理员

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
kechengzhanghao varchar(200) 课程账号
mima varchar(200) 密码
kechengxingming varchar(200) 课程姓名
xingbie varchar(200) NULL 性别
shouji varchar(200) NULL 手机
youxiang varchar(200) NULL 邮箱
zhaopian varchar(200) NULL 照片
money float 0 余额

表11 名师

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
jiangshigonghao varchar(200) NULL 讲师工号
jiangshixingming varchar(200) NULL 讲师姓名
xingbie varchar(200) NULL 性别
touxiang varchar(200) NULL 头像
huojiangzhengshu longtext NULL 获奖证书
suoshudanwei varchar(200) NULL 所属单位
jiaoshoukecheng varchar(200) NULL 教授课程
xiangxixinxi longtext NULL 详细信息
clicktime datetime NULL 最近点击时间

表12 订单

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
orderid varchar(200) 订单编号
tablename varchar(200) kecheng 商品表名
userid bigint(20) 用户id
goodid bigint(20) 商品id
goodname varchar(200) NULL 商品名称
picture varchar(200) NULL 商品图片
buynumber int(11) 购买数量
price float 0 价格/积分
discountprice float 0 折扣价格
total float 0 总价格/总积分
discounttotal float 0 折扣总价格
type int(11) 1 支付类型
status varchar(200) NULL 状态
address varchar(200) NULL 地址
tel varchar(200) NULL 电话
consignee varchar(200) NULL 收货人

表13 普通管理员

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
putongzhanghao varchar(200) 普通账号
mima varchar(200) 密码
putongxingming varchar(200) 普通姓名
xingbie varchar(200) NULL 性别
shouji varchar(200) NULL 手机
youxiang varchar(200) NULL 邮箱
zhaopian varchar(200) NULL 照片
money float 0 余额

表14 收藏表

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
userid bigint(20) 用户id
refid bigint(20) NULL 收藏id
tablename varchar(200) NULL 表名
name varchar(200) 收藏名称
picture varchar(200) 收藏图片

表15 管理员表

字段 类型 默认 注释
id (主键) bigint(20) 主键
username varchar(100) 用户名
password varchar(100) 密码
role varchar(100) 管理员 角色
addtime timestamp CURRENT_TIMESTAMP 新增时间

表16 用户

字段 类型 默认 注释
id (主键) bigint(20) 主键
addtime timestamp CURRENT_TIMESTAMP 创建时间
zhanghao varchar(200) 账号
mima varchar(200) 密码
nicheng varchar(200) 昵称
xingbie varchar(200) NULL 性别
shouji varchar(200) NULL 手机
youxiang varchar(200) NULL 邮箱
zhaopian varchar(200) NULL 照片
money float 0 余额

三、系统详细实现

1 普通管理员管理

管理员可以对普通管理员账号信息进行添加修改删除操作。具体界面的展示如图1所示。

2 课程管理员管理

管理员可以对课程管理员进行添加修改删除操作。具体界面如图2所示。

3 课程信息管理

课程管理员可以对课程信息进行添加,修改,删除以及查询操作。界面如下图所示:

4 用户信息管理

普通管理员可以对用户信息进行添加修改删除操作。界面如下图所示:

5 讲师信息管理

管理员可以对讲师信息进行添加修改删除操作。界面如下图所示:

源码+论文下载>>

相关推荐
知其然亦知其所以然21 分钟前
面试官微笑发问:第100万页怎么查?我差点当场沉默…
后端·mysql·面试
前端与小赵35 分钟前
vue3和vue2生命周期的区别
前端·javascript·vue.js
Sailing1 小时前
👉 👉 Vue3 自定义 Hook:从入门到进阶(~~安静的阅读2分钟,相信我,这篇文章一定能给你启发)
前端·javascript·vue.js
蒋星熠1 小时前
深入 Kubernetes:从零到生产的工程实践与原理洞察
人工智能·spring boot·微服务·云原生·容器·架构·kubernetes
aol1211 小时前
X6官方示例「数据加工DAG图」转为Vue版
前端·vue.js
用户66982061129821 小时前
vue3 hooks、utils、data这几个文件夹分别是放什么的?
javascript·vue.js
ponnylv1 小时前
深入剖析Spring Boot自动配置原理
spring boot·spring
....4921 小时前
Vue3 与 AntV X6 节点传参、自动布局及边颜色控制教程
前端·javascript·vue.js
前端小白19951 小时前
面试取经:Vue篇-Vue2响应式原理
前端·vue.js·面试