<br>
<font color="#409EFF" size="6">基于SpringBoot+Vue前后端分离的在线教育平台项目</font>
<br><br>
**赠给有缘人,希望能帮助到你!也请不要吝惜你的大拇指,你的Star、点赞将是对我最大的鼓励与支持!**
**开源传送门:**
- 后台:[Gitee](https://gitee.com/snwjas/online-edu) | [GitHub](https://github.com/snwjas/OnlineEdu)
- 管理员前端:[Gitee](https://gitee.com/snwjas/online-edu-admin) | [GitHub](https://github.com/snwjas/OnlineEdu-Admin)
- 讲师前端:[Gitee](https://gitee.com/snwjas/online-edu-teacher) | [GitHub](https://github.com/snwjas/OnlineEdu-Teacher)
- 学员前端(首页):[Gitee](https://gitee.com/snwjas/online-edu-app) | [GitHub](https://github.com/snwjas/OnlineEdu-App)
**演示DEMO传送门:**
- 学员端(首页):[oeapp](https://oeapp.refrain.xyz)
- 管理员端:[oeadmin](https://oeadmin.refrain.xyz)
- 讲师端:[oeteacher](https://oeteacher.refrain.xyz)
## 前言
本项目是笔者毕设作品,肝了一周多时间赶出来的,后台写得比较垃圾,前端界面自我感觉还行,但笔者前端只是打辅助的。总的参考价值因人而言。
- 随心所欲,只为功能实现,没有规范,没有优化,不谈安全;
- Service层没有接口,实现直接返回Controller结果,因而造成代码大量耦合,拓展性极差;
- MyBatis-Plus直接面向对象Dao操作,没有写SQL语句,业务逻辑全部使用JAVA代码完成;
- 仍存在较多缺陷,但显示到的菜单功能基本都是完整的,除了支付功能。
关于项目演示:出于多种考虑,演示DEMO中关于修改的操作全部禁用。如果需要了解完整的项目演示效果,请本地测试运行项目,自行在配置文件配置阿里云OSS和VoD相关选项。
鸣谢:部分界面设计元素参考腾讯课堂与龙果学院。
## 项目介绍
基于SpringBoot+Vue前后端分离的在线教育平台项目,单体应用服务架构。
系统共设计三种角色:管理员、讲师和学员,三个角色分别对应一个操作端。也就是本系统1个后台项目,三个前端项目。管理员端没有引入角色和权限管理,只有一个角色。
已实现的功能列表展示:
**管理员端:**
- 数据统计
- 轮播图管理
- 课程管理
- 课程列表
- 课程审核
- 分类管理
- 讲师管理
- 讲师列表
- 讲师审核
- 学员管理
- 用户管理
- 订单管理
**讲师端:**
- 发布课程
- 课程管理
- 评论管理
- 消息接收
**学员端(网站首页):**
- 登录注册
- 分类与轮播图展示
- 课程列表展示
- 课程搜索(关键词、分类、讲师)
- 课程详情(播放器、课程介绍、评论、讲师简介、订阅)
- 订阅订单
- 讲师入驻
## 技术选型
**开发环境**
- 工具:IntelliJ IDEA
- JDK 1.8
- 数据库:MySQL 8.0.15
- 项目构建:后端Maven、前端 webpack
**后端**
- Web框架:Spring Boot
- 字段校验:Spring Validation
- 持久层:[MyBatis-Plus](https://mybatis.plus/)
- 接口文档:Swagger2
- Lombok:请确保您的 IDE 安装了此插件
- 缓存:Redis
- 工具:[Hutool](https://www.hutool.cn/)
- 资源存储:阿里云对象存储OSS
- 课程视频点播:阿里云视频点播VoD
**前端**
- Vue.js2 全家桶
- Element-UI
- [vue-admin-template](https://github.com/PanJiaChen/vue-admin-template) 后台模板
- axios
- 图表:v-charts(ECharts)
- 富文本编辑器:[wangEditor](https://github.com/wangeditor-team/wangEditor/)
- 等等
## 数据库设计
![ER图](md-assets/er.png)
**数据库: online\_edu,统一编码:utf8mb4**
**表格: acl\_permission**
索引:
| 名称 | 类型 | 属性 | 备注 |
| ------ | ---- | ------ | ---- |
| 主索引 | id | unique | |
字段:
| 名称 | 类型 | 空 | 默认值 | 属性 | 备注 |
| ------------ | --------------------- | ---- | ------------------- | ---- | ------------------------------------------------------------ |
| id | int\(11\) unsigned | 否 | \<auto\_increment> | | 菜单权限表 |
| pid | int\(11\) unsigned | 否 | | | 父级id |
| type | tinyint\(4\) unsigned | 否 | 1 | | 菜单类型,0顶部菜单、1聚合菜单、2页面菜单、3接口 |
| name | varchar\(255\) | 是 | | | 路由名称或接口名称 |
| path | varchar\(255\) | 否 | | | 菜单路径\(以http开头时,视为打开外部链接\) 或 请求接口的地址 |
| component | varchar\(255\) | 是 | | | 菜单组件,只有叶子菜单才可配置 |
| meta | varchar\(1023\) | 是 | \<空> | | 菜单的route.meta配置项,json格式 |
| admin | tinyint\(1\) unsigned | 否 | 0 | | 0默认,1只有超级管理员才能使用 |
| enable | tinyint\(1\) unsigned | 否 | 1 | | 是否启用,0否1是 |
| update\_time | datetime | 是 | \<INSERT-TimeStamp> | | 更新时间 |
| create\_time | datetime | 是 | \<INSERT-TimeStamp> | | 创建时间 |
**表格: acl\_role**
备注: 角色
索引:
| 名称 | 类型 | 属性 | 备注 |
| ------ | ---- | ------ | ---- |
| 主索引 | id | unique | |
字段:
| 名称 | 类型 | 空 | 默认值 | 属性 | 备注 |
| -------------- | ------------------ | ---- | ------------------- | ---- | ------------------ |
| id | int\(11\) unsigned | 否 | \<auto\_increment> | | 角色id |
| name | varchar\(31\) | 否 | | | 角色名称 |
| permission\_id | varchar\(2048\) | 是 | | | 角色具有的权限ID串 |
| enable | tinyint\(1\) | 是 | 1 | | 是否启用,0否1是 |
| update\_time | datetime | 是 | \<INSERT-TimeStamp> | | 更新时间 |
| create\_time | datetime | 是 | \<INSERT-TimeStamp> | | 创建时间 |
**表格: acl\_user**
备注: 管理员用户表
索引:
| 名称 | 类型 | 属性 | 备注 |
| ------------ | -------- | ------ | ---- |
| 主索引 | id | unique | |
| uk\_username | username | unique | |
字段:
| 名称 | 类型 | 空 | 默认值 | 属性 | 备注 |
| ------------ | --------------------- | ---- | ------------------- | ---- | ---------------- |
| id | int\(11\) unsigned | 否 | \<auto\_increment> | | 用户id |
| username | varchar\(31\) | 否 | | | 用户名 |
| password | varchar\(255\) | 否 | | | 密码 |
| nickname | varchar\(31\) | 是 | | | 昵称 |
| avatar | varchar\(1023\) | 是 | | | 用户头像 |
| mark | varchar\(255\) | 是 | | | 备注 |
| sign | varchar\(255\) | 是 | | | 用户签名 |
| roleId | int\(11\) unsigned
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
这里为你收集整理了关于毕业设计、课程设计可参考借鉴的资料一份,质量非常高,如果你投入时间去研究几天相信肯定对你有很大的帮助。到时候你会回来感谢我的。 本资源是经过本地编译测试、可打开、可运行的项目、文件或源码,可以用于毕业设计、课程设计的应用、参考和学习需求,请放心下载。 祝愿你在这个毕业设计项目中取得巨大进步,顺利毕业! 但还需强调一下,这些项目源码仅供学习和研究之用。在使用这些资源时,请务必遵守学术诚信原则和相关法律法规,不得将其用于任何商业目的或侵犯他人权益的行为。对于任何因使用本资源而导致的问题,包括但不限于数据丢失、系统崩溃或安全漏洞,风险自担哦! 如有侵权,请联系博主删除。
资源推荐
资源详情
资源评论
收起资源包目录
毕业设计-基于SpringBootVue前后端分离的在线教育平台项目.zip (193个子文件)
.gitkeep 0B
.gitkeep 0B
EduCourseService.java 17KB
EduTeacherService.java 16KB
UctrMemberService.java 16KB
RedisUtils.java 13KB
AclUserService.java 12KB
EduSubjectService.java 10KB
StatService.java 10KB
SessionUtils.java 8KB
EduCourseTmpService.java 8KB
TOrderService.java 8KB
ContentController.java 8KB
HmBannerService.java 7KB
EduVideoService.java 7KB
SysMessageService.java 5KB
EduCourseController.java 5KB
WebMvcConfig.java 5KB
EduCommentService.java 5KB
RestUnifiedExceptionHandler.java 5KB
EduChapterTmpService.java 4KB
EduVideoTmpService.java 4KB
AliyunVodService.java 4KB
CodeAutoGenerator.java 4KB
AclUserController.java 4KB
JsonUtils.java 4KB
EduChapterService.java 3KB
IPUtils.java 3KB
EduTeacherController.java 3KB
LambdaTypeUtils.java 3KB
ActionRecordAspect.java 3KB
UctrMemberController.java 3KB
UctrMemberController.java 3KB
LocalDateTimeSerializerConfig.java 3KB
EduCourseController.java 3KB
EduCourseSimpleVO.java 3KB
HmBannerController.java 3KB
AliyunOssService.java 3KB
SysMessageController.java 2KB
EduCommentVO.java 2KB
EduCourseEntity.java 2KB
EduVideoTmpVO.java 2KB
EduVideoTmpEntity.java 2KB
EduVideoController.java 2KB
EduSubjectController.java 2KB
EduTeacherEntity.java 2KB
RedisConfig.java 2KB
EduVideoVO.java 2KB
EduVideoTmpController.java 2KB
EduTeacherDetail.java 2KB
SwaggerConfig.java 2KB
EduVideoEntity.java 2KB
StatCommonVO.java 2KB
VideoUtil.java 2KB
SysMessageEntity.java 2KB
UctrMemberEntity.java 2KB
EduVideoController.java 2KB
AccessLimitInterceptor.java 2KB
EduChapterTmpController.java 2KB
RUtils.java 2KB
TOrderEntity.java 2KB
EduTeacherSimpleVO.java 2KB
EduChapterController.java 2KB
AclUserEntity.java 2KB
EduChapterController.java 2KB
StatDailyEntity.java 2KB
EduCommentEntity.java 2KB
EduCommentController.java 2KB
EduChapterTmpVO.java 2KB
HmBannerVO.java 2KB
TOrderVO.java 2KB
RS.java 2KB
EduChapterTmpEntity.java 2KB
EduTeacherController.java 2KB
HmBannerEntity.java 2KB
EduChapterVO.java 2KB
EduSubjectDetailVO.java 2KB
TimeCostAspect.java 2KB
UctrMemberDetail.java 2KB
EduSubjectEntity.java 1KB
AclUserDetail.java 1KB
StatController.java 1KB
EduChapterEntity.java 1KB
StatConstant.java 1KB
UctrMemberSimpleVO.java 1KB
RelCourseMemberEntity.java 1KB
AclRoleService.java 1KB
AclRoleEntity.java 1KB
AliyunConfig.java 1KB
SysMessageVO.java 1KB
HibernateValidationConfig.java 1KB
StatController.java 1KB
AclUserVO.java 1KB
StatDailyVO.java 1KB
TOrderController.java 1KB
RWriterUtils.java 1KB
AclRoleController.java 1KB
EduCourseSearchParam.java 1KB
AppSecurityInterceptor.java 1KB
ActionRecord.java 1023B
共 193 条
- 1
- 2
资源评论
高校毕业设计
- 粉丝: 184
- 资源: 385
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功