基于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 讲师信息管理

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

源码+论文下载>>

相关推荐
CodeMartain几秒前
@SpringBootApplication 到底是什么呢?
java·spring boot·intellij-idea
Chasing__Dreams23 分钟前
Mysql--基础知识点--105--分布式事务
数据库·分布式·mysql
与数据交流的路上31 分钟前
mysql-通过binlog分析大事务
数据库·mysql
许彰午32 分钟前
Spring Boot + Vue 实现 XML 动态表单:固定字段 + 自由扩展方案
xml·vue.js·spring boot
indexsunny36 分钟前
互联网大厂Java面试实战:Spring Boot微服务与Kafka消息队列深度解析
java·spring boot·微服务·面试·kafka·消息队列·电商
前端那点事40 分钟前
Vue并发控制|几十个请求高效管控(实战方案+可运行代码)
前端·vue.js
NoSi EFUL1 小时前
学生成绩管理系统(MySQL)
android·数据库·mysql
Yeats_Liao1 小时前
Trae 配置 MySQL MCP 指南
数据库·mysql
前端那点事1 小时前
Vue大批量接口请求优化|告别卡顿、超时!前端落地实战指南
前端·vue.js
DevilSeagull1 小时前
MySQL(1) 安装与配置
java·数据库·git·mysql·http·开源·github