学成在线
该项目以在线教育业务为基础,基于当前热门的 Spring Cloud 微服务技术栈进行设计,采用Nginx、SpringBoot、Spring Cloud、MyBatis-Plus、MQ、Redis、Elasticsearch等框架和中间件为基础进行开发,带你体验Java大型项目从需求分析、架构设计、编码、调试、测试的整个过程。
《学成在线》项目采用的是SpringBoot+springcloud当下最流行的微服务为项目架构,配合spring cloud alibaba nacos作为项目的注册和配置中心。新课程采用快速开发的模式,主要解决真实企业开发的一些应用场景。深入挖掘技术和业务的解决方案,做到更加的通用,能举一反三,充分满足互联网行业中复杂的微服务技术要求。
使用 Nacos 做服务注册和配置中心
使用 Gateway 统一路由微服务
树型表的查询的两种方式:使用 WITH 递归查询;使用LEFT JOIN 查询
统一返回结果处理、全局异常拦截
JSR303参数校验
图片和视频分片上传,上传文件到MinIO,使用MinIO合并分片文件
使用 FFmpeg 转码文件
使用 Freemarker 生成静态内容页面
使用 MySQL + Redis + Elasticsearch + MinIO 做内容检索和缓存
本项目包括了用户端、机构端、运营端、核心模块包括:内容管理、媒资管理、课程搜索、订单支付、选课管理、认证授权等。
本项目主要包括三类用户角色:学生、教学机构老师、平台运营人员。
主要讲解下边的业务流程:
教学机构的老师登陆教学管理平台,编辑课程信息,发布自己的课程。
平台运营人员登陆平台审核课程、视频等信息,审核通过后课程方可发布。
用户登陆门户网站搜索课程、浏览课程信息、免费课程直接选课学习,付费课程需要购买课程,支付订单后方可学习。