領課網路線上教育系統開源專案
專案介紹
領課教育是基於領課團隊多年的線上教育開發和運營經驗的產品,打造一個全行業都適用的線上教育系統。
如果對你有用,請給個star!
相關連結
前端工程(roncoo-education-web): 碼雲地址 | Github地址
配置工程(roncoo-education-config): 碼雲地址 | Github地址
前端演示地址: 領課教育
後臺演示地址: 管理後臺
功能介紹
- 許可權管理功能,多角色多使用者自定義配置
- 系統配置功能,自定義進行站點配置及第三方引數配置
- 講師管理功能,講師申請入駐,後臺具有稽核功能
- 課程管理功能,講師管理自有課程,後臺具有稽核功能
- 使用者登入功能,同一時間只允許同一個賬號在同一個地方登入,防止賬號共享
- 廣告管理功能,後臺自定義廣告設定,增加營銷效果
- 支付功能,系統無縫集成了龍果支付
TODO
- 動態更新配置(spring cloud bus + kafka + spring cloud config)
- 日誌收集統計(kafka + Elasticsearch + Logstash + Kibana)
- 鏈路追蹤監控(spring cloud sleuth + kafka + zipkin)
技術選型
核心技術框架 | 註冊中心 | 服務閘道器 | 負載均衡 |
---|---|---|---|
Spring Cloud | Eureka | Zuul | Feign + Ribbon |
斷路器 | 持久層 | 連線池 | 快取 |
Hystrix | Mybatis | Druid | Redis |
模板引擎 | 日誌框架 | 常用工具 | 版本維護 |
Freemarker | Logback | Hutool | Spring IO Platform |
流程圖說明
- 系統架構圖
系統架構圖
- 課程播放流程
課程播放流程
- 播放鑑權流程
播放鑑權流程
- 課程下單流程
課程下單流程
- 下單回撥流程
下單回撥流程
專案結構
├─roncoo-education -----------------------------父專案,公共依賴 ││ │├─roncoo-education-course -------------------課程模組,包括訂單模組 │││ ││├─roncoo-education-course-common ---------共用工程 │││ ││├─roncoo-education-course-feign ----------介面工程,供其他工程模組使用 │││ ││└─roncoo-education-course-service --------服務工程,其他介面服務 ││ │├─roncoo-education-crontab-plan -------------定時任務,處理過期訂單和統計等 ││ │├─roncoo-education-gateway-api --------------閘道器工程 ││ │├─roncoo-education-server-admin -------------監控中心 ││ │├─roncoo-education-server-config ------------配置中心 ││ │├─roncoo-education-server-eureka ------------註冊中心 ││ │├─roncoo-education-system -------------------系統基礎工程 │││ ││├─roncoo-education-system-common ---------共用工程 │││ ││├─roncoo-education-system-feign ----------介面工程,供其他工程模組使用 │││ ││└─roncoo-education-system-service --------服務工程,其他介面服務 ││ │├─roncoo-education-user ---------------------使用者工程 │││ ││├─roncoo-education-user-common -----------共用工程 │││ ││├─roncoo-education-user-feign ------------介面工程,供其他工程模組使用 │││ ││└─roncoo-education-user-service ----------服務工程,其他介面服務 ││ │├─roncoo-education-web-boss -----------------管理後臺工程 ││ │├─doc │││ ││├─images --------------------------------專案演示截圖 │││ ││├─lombok.jar ----------------------------Eclipse使用,放到Eclipse的根目錄即可 │││ └──└──└─*.sql----------------------------------專案SQL指令碼:帶有demo資料
加速maven構建
在maven的settings.xml 檔案裡配置mirrors的子節點,新增如下mirror
<mirror> <id>nexus-aliyun</id> <mirrorOf>*</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror>
Lombok使用
Lombok是一個可以通過簡單的註解形式來幫助我們簡化消除一些必須有但顯得很臃腫的Java程式碼的工具,通過使用對應的註解,可以在編譯原始碼的時候生成對應的方法。 官方地址:https://projectlombok.org/
1. Eclipse使用方法
把lombok.jar放入Eclipse的根目錄,在eclipse.ini配置檔案的最後加上
-javaagent:lombok.jar
2. IntelliJ IDEA使用方法
安裝外掛,如圖所示

圖
加群獲取sql指令碼: 826617734

20181212-微信底部通欄-小程式02.jpg