基于 SpringCloud + Vue 的硅谷课堂前后端分离微信公众号项目
Spring-_-Bear 的 CSDN 博客导航文章目录一、快速开始1.1 后端服务系统1.2 后台管理系统1.3 移动应用系统1.4 微信公众号二、项目介绍三、系统流程四、功能架构五、技术架构六、工程结构七、技术选型八、效果展示8.1 后台管理系统8.1.1 管理员8.1.2 讲师管理8.1.3 课程分类管理8.1.4 课程管理8.1.5 优惠券管理8.1.6 公众号菜单管理8.1.7 课程订单管理8.1.8 直播管理8.2 微信公众号8.2.1 消息提醒8.2.2 课程信息8.2.3 购买课程开发时间Spring CloudVantElementUI开源项目22/10/17 - 22/11/04Hxton2.6.112.13.2atguigu-course一、快速开始1.1 后端服务系统克隆仓库使用 Git 克隆仓库或直接下载仓库压缩包到您的计算机来获取源代码。打开工程使用 IntelliJ IDEA 开发工具打开 course-server 后端服务系统模块而后使用 Maven 项目构建工具更新工程模块依赖。创建数据库并导入数据登录 MySQL 控制台依据 document/sql 目录下的 7 个 SQL 脚本文件创建七个数据库并导入数据库表和数据。修改配置修改 course-server/service/service-*/**/application.yml 六个模块中的数据库连接信息设置你自己的数据库用户名和密码。修改 course-server/service/service-*/**/application.yml 六个模块中的 Nacos 配置信息设置你的 Nacos 地址和端口默认配置为 localhost:8848。可选配置course-server/service/service-live/**/application.properties修改 欢拓云 直播平台配置信息若不修改则后台管理系统course-backend中直播课程相关的 CRUD 功能异常。course-server/service/service-user/**/application.properties修改 微信公众号测试号 的应用 ID 信息和应用密钥以及用户同意授权个人信息后的回调地址。注意此回调地址需为公网地址才能被微信平台识别并且需要在微信公众号测试号中配置网页账号授权回调页面域名详见 1.4。若不修改则手机端微信公众号中的相关功能均不可用。course-server/service/service-vod/**/application.properties修改 腾讯云对象存储 的存储空间信息和 腾讯云视频点播 服务的应用 ID 信息。若不修改则腾讯云相关图片存储服务不可用课程小节视频不能上传和查看。course-server/service/service-wechat/**/application.properties修改微信公众号测试号的配置信息以及接口配置信息并且需要在微信公众号测试号中填写接口配置信息详见 1.4。若不修改则手机端微信公众号一切功能异常。同时还需要修改微信公众号页面的服务器地址也即 course-mobile 项目的部署地址此地址需为公网地址以供微信后台调用若不修改则微信公众号中的查看课程信息功能异常不能跳转到任何页面。注service-user 和 service-wechat 中用到的公网域名地址可通过配置内网穿透的方式实现具体可参看 Ngrok 内网转发工具。具体来说需要配置两个内网穿透地址第一个内网穿透地址映射到后端服务系统course-server网关模块端口即 http://course.5gzvip.91tunnel.com - http://localhost:8888。第二个内网穿透地址映射到移动应用系统course-mobile所监听的端口即 http://mobile.vipgz4.91tunnel.com - http://localhost:8080。工程名子模块端口内网穿透地址course-server后端服务系统gateway8888http://course.5gzvip.91tunnel.comservice-vod8081service-order8082service-activity8083service-user8084service-wechat8085service-live8086course-mobile移动应用系统8080http://mobile.vipgz4.91tunnel.comcourse-backend后台管理系统9528启动 Nacos 服务进入 Nacos 安装目录下的 bin 目录在控制台以 startup.cmd -m standalone 命令以单机模式启动 Nacos 服务。启动后端服务系统在 IDEA 中批量启动所有后台服务包括一个网关gateway和六个业务服务service-*。1.2 后台管理系统注请确保1.1 后端服务系统中的一个网关和六个业务服务正常启动以提供正常的接口功能。克隆仓库使用 Git 克隆仓库或直接下载仓库压缩包到您的计算机来获取源代码。打开工程使用 WebStorm 开发工具打开 course-backend 后台管理系统模块。安装依赖在控制台使用 npm install 命令安装工程所需依赖。修改配置course-backend/.env.development修改该文件中的 VUE_APP_BASE_API 变量的值为后端服务系统网关地址默认为http://localhost:8888 即 1.1 后端服务系统中网关模块的 IP 地址和端口信息。启动系统在控制台使用 npm run dev 命令启动工程启动成功即可进入后台管理系统登录页。1.3 移动应用系统注请确保1.1 后端服务系统中的一个网关和六个业务服务正常启动以提供正常的接口功能。克隆仓库使用 Git 克隆仓库或直接下载仓库压缩包到您的计算机来获取源代码。打开工程使用 WebStorm 开发工具打开 course-mobile 移动应用系统模块。安装依赖在控制台使用 npm install 命令安装工程所需依赖。修改配置course-mobile/utils/request.js修改该文件中的 BASE_REQUEST_URL 变量的值为后端服务系统网关模块的内网穿透地址。启动系统在控制台使用 npm run serve 命令启动工程。1.4 微信公众号申请 微信公众号测试号在微信公众号测试号中配置网页账号授权回调页面域名。配置公众号测试号的接口配置信息只需要修改公网域名部分即可即修改 course.5gzvip.91tunnel.com 为你自己的公网域名。在后台管理系统中同步公众号菜单信息。关注公众号并在手机端测试公众号的相关功能。系统整个网络穿透配置和请求响应流程如下图二、项目介绍硅谷课堂是尚硅谷与腾讯云官方合作推出的项目是一款基于微信公众号 B2C 模式的在线学习平台该平台包含三大模块直播、教学与微信消息服务。平台会定期推出直播课程方便学员与名师之间的交流互动学员也可以购买教学视频在线学习分享直播与教学视频获取平台收益。平台支持直播、腾讯云视频点播、微信支付、微信授权登录、微信菜单、微信消息与腾讯云文件存储等一系列功能为学员构建了一个全方位的在线学习平台。硅谷课堂项目具有很强的实用性业务场景贴近实际技术应用紧跟市场潮流完全按照市场需求开发。既是对主流 Java 技术的系统性梳理和整合同时也是各种主流技术实际应用的练兵场能够帮助 Java 程序员积累项目经验。三、系统流程四、功能架构五、技术架构六、工程结构course-backend-- 父工程统一依赖管理├── client-- 客户端通过 Spring Cloud Feign 提供服务├── activity-- 营销活动相关服务├── order-- 订单 api 接口├── user-- 用户 api 接口├── vod-- 课程点播 api 接口├── common-- 通用模块├── model-- 通用数据模型├── util-- 通用工具类├── gateway-- 服务网关统一管理各种 service 服务解决跨域问题├── service-- 提供服务为前后台提供具体服务├── live-- 营销活动相关服务├── model-- 直播课程相关服务├── order-- 订单相关服务├── user-- 用户相关服务├── vod-- 课程点播相关服务├── wechat-- 微信公众号相关服务七、技术选型技术说明Spring BootSpring 快速开发脚手架Spring Cloud GatewaySpring 网关Spring Cloud Alibaba Nacos微服务注册中心Spring Cloud Feign远程服务调用MyBatis PlusORM 框架MySQL关系数据库Easy ExcelJava excel 操作工具Swagger项目文档生成工具JWT跨域认证解决方案Lombok简化 POJO 类开发Vue.jsJavaScript 框架Axios请求库ElementUI桌面端组件库Vant移动端组件库腾讯云对象存储对象存储腾讯云视频点播视频点播欢拓云直播视频直播微信公众号公众号八、效果展示8.1 后台管理系统8.1.1 管理员管理员登录页管理员欢迎页8.1.2 讲师管理新增讲师填写讲师必要信息上传讲师头像到腾讯云对象存储平台进行图片保存。删除讲师编辑讲师选定需要编辑的讲师回显讲师信息保存后更新讲师信息。查询讲师可根据讲师姓名、头衔等信息查询展示讲师。8.1.3 课程分类管理导入课程分类选中保存有课程分类的 excel 文件上传到服务器由服务器解析并保存课程分类信息。导出课程分类选定导出课程分类按钮由服务器处理课程分类信息并写入 excel 文件供下载。查询课程分类课程分类信息 “懒加载” 展示。8.1.4 课程管理新增课程填入课程必要信息选择课程分类信息上传课程封面。删除课程编辑课程查询课程可根据课程分类信息、课程名称以及课程讲师信息查询课程。课程访客统计编辑课程大纲一门课程下有多个章节一个章节包含多个小节一个课程小节对应一份课程视频。新增课程章节上传课程小节视频选择课程小节视频上传到腾讯云视频点播平台。发布课程将课程修改为已发布状态。8.1.5 优惠券管理新增优惠券删除优惠券编辑优惠券优惠券详情展示优惠券及已使用的优惠券信息。8.1.6 公众号菜单管理添加公众号菜单修改公众号菜单同步公众号菜单同步公众号菜单后最新的菜单信息将同步到微信公众号中。公众号菜单列表8.1.7 课程订单管理订单查询根据订单号、手机号等信息查询用户的课程订单信息。8.1.8 直播管理新增直播删除直播编辑直播直播配置直播账号8.2 微信公众号8.2.1 消息提醒关注公众号关于我子菜单8.2.2 课程信息关键字查询课程课程分类子菜单课程分类列表课程详情课程视频播放8.2.3 购买课程购买课程兑换优惠券不可用优惠券可用优惠券模拟订单支付课程购买成功支付消息推送

相关新闻

网络最大流问题求解方法及实现

网络最大流问题求解方法及实现

最大流问题在解决最大流问题中,我们需要求解就是在一个给定的流网络中找出最大流(同时给定源点和汇点)具有多个源点和汇点的流网络问题的求解在求解最大流问题时我们可能遇到具有多个源点和汇点的流网络,这时我们通过添加一个超级…

2026/10/12 14:27:47 阅读更多 →
STM32F723ZE电源管理实战:PCA9422 PMIC配置与I2C驱动开发

STM32F723ZE电源管理实战:PCA9422 PMIC配置与I2C驱动开发

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:33:46 阅读更多 →
PCA9422与STM32F100ZE构建闭环低功耗电源管理系统

PCA9422与STM32F100ZE构建闭环低功耗电源管理系统

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 14:00:12 阅读更多 →

最新新闻

编译原理四类语法分析器实现与冲突消解实战

编译原理四类语法分析器实现与冲突消解实战

简介:本资源是北京化工大学编译原理课程大作业的完整实现包,面向计算机类专业本科生、课程设计实践者及编译技术初学者,系统覆盖词法分析与多种语法分析核心算法(LL1、LR0、SLR1、LR1、LALR1),解决理论学习…

2026/10/12 15:05:48 阅读更多 →
OpenClaw 对接国内 AI 模型:用 TaoToken 统一 Key 省 Token 成本

OpenClaw 对接国内 AI 模型:用 TaoToken 统一 Key 省 Token 成本

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 15:05:48 阅读更多 →
AI代理营销技能库:从大模型能力到稳定可迭代的营销工作流

AI代理营销技能库:从大模型能力到稳定可迭代的营销工作流

1. 为什么需要"营销技能库":AI代理的专项能力瓶颈 1.1 通用大模型做营销的"四不够" 先聊一个我自己的直观感受。去年年初我做了一批基于大模型API的营销辅助工具,产品、文案、投放的同事都来试用。刚开始大家很兴奋,因为…

2026/10/12 15:05:48 阅读更多 →
智能体分级与落地:从L1到L5的实战指南

智能体分级与落地:从L1到L5的实战指南

这两年“智能体”这个词已经快被聊烂了,但凡一个工具接了大模型接口,都敢在发布会上管自己叫智能体。但真正把它当作“干活的个体”来用的人,应该都有同感:不同的智能体,干活能力差别可以大到像两个物种。有的只会在对…

2026/10/12 15:05:48 阅读更多 →
网络切片仿真实战:从资源隔离到SLA验证的完整指南

网络切片仿真实战:从资源隔离到SLA验证的完整指南

简介:这份网络切片仿真资源面向5G通信网络方向的研究人员、高校学生与工程技术人员,聚焦在共享物理基础设施上构建多个独立逻辑网络这一核心命题,帮助读者在真实部署前完成切片建模、资源分配与性能评估。压缩包共67个文件,约280K…

2026/10/12 15:05:48 阅读更多 →
openclaw 用例翻译笔记:Event Guest Confirmation 的 Twilio 与 OpenAI 配置拆解

openclaw 用例翻译笔记:Event Guest Confirmation 的 Twilio 与 OpenAI 配置拆解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 15:04:46 阅读更多 →

日新闻

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

在数码相机、高清显示屏与现代矢量图形技术高度发达的今天,画面可以做到绝对的锐利、平滑与无瑕。然而,当一张秋日手账插画或拍立得照片过于“平整无瑕”时,往往会散发出一种冰冷生硬的“数码塑料感(Digital Plasticity&#xff0…

2026/10/12 0:00:59 阅读更多 →
活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

在现代网页与移动端设计中,横排(Horizontal Layout)早已经成为了绝对的主流。然而,当我们翻开泛黄的线装古籍、宋版木刻诗集,或是欣赏一张茶道雅集的手写便签时,那种**自上而下纵向书写、自右向左逐列铺展&…

2026/10/12 0:00:59 阅读更多 →
周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

每到周日的晚上八点到十点,很多人心里都会悄悄亮起一盏警示灯。 在心理学上,这种现象有一个专门的称谓——“周日夜晚焦虑症(Sunday Scaries)”。明天又是周一,闹钟又要重新在七点响彻卧房;脑海里仿佛有一个…

2026/10/12 0:00:59 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/12 0:16:30 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/12 0:16:43 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 14:48:49 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →