SpringBoot實戰電商項目mall(30k+star)地址:github.com/macrozheng/…前端
mall-swarm
做爲mall
項目的Spring Cloud版本,目前已更新至最新代碼,新增了權限管理功能。mall
項目中的代碼將一直保持最新,mall-swarm
每過一段時間將從mall
中合併一次代碼,本文主要介紹mall-swarm
的基本內容及學習路線。git
mall-swarm
是一套微服務商城系統,採用了 Spring Cloud Greenwich、Spring Boot 二、MyBatis、Docker、Elasticsearch等核心技術,同時提供了基於Vue的管理後臺方便快速搭建系統。mall-swarm
在電商業務的基礎集成了註冊中心、配置中心、監控中心、網關等系統功能。github
技術 | 說明 |
---|---|
Spring Cloud | 微服務框架 |
Spring Boot | 容器+MVC框架 |
Spring Security | 認證和受權框架 |
MyBatis | ORM框架 |
MyBatisGenerator | 數據層代碼生成 |
PageHelper | MyBatis物理分頁插件 |
Swagger-UI | 文檔生產工具 |
Elasticsearch | 搜索引擎 |
RabbitMq | 消息隊列 |
Redis | 分佈式緩存 |
MongoDb | NoSql數據庫 |
Docker | 應用容器引擎 |
Druid | 數據庫鏈接池 |
OSS | 對象存儲 |
MinIO | 對象存儲 |
JWT | JWT登陸支持 |
LogStash | 日誌收集 |
Lombok | 簡化對象封裝工具 |
Seata | 全局事務管理框架 |
Portainer | 可視化Docker容器管理 |
Jenkins | 自動化部署工具 |
mall
├── mall-common -- 工具類及通用代碼模塊
├── mall-mbg -- MyBatisGenerator生成的數據庫操做代碼模塊
├── mall-security -- 封裝SpringSecurity+JWT的安全認證的模塊
├── mall-registry -- 基於Eureka的微服務註冊中心
├── mall-config -- 基於Spring Cloud Config的微服務配置中心
├── mall-gateway -- 基於Spring Cloud Gateway的微服務API網關服務
├── mall-monitor -- 基於Spring Boot Admin的微服務監控中心
├── mall-admin -- 後臺管理系統服務
├── mall-search -- 基於Elasticsearch的商品搜索系統服務
├── mall-portal -- 移動端商城系統服務
└── mall-demo -- 微服務遠程調用測試服務
複製代碼
以前有朋友問我,
mall-swarm
這個項目有沒有學習教程?其實這個項目的功能與mall
項目基本一致,只是在此基礎上改爲了微服務版本,只要看我寫的《mall學習教程》和《Spring Cloud學習教程》便可,下面聊聊我所推薦的學習路線。web
《mall學習教程》主要分爲以下幾個部分,推薦學習順序是除參考篇之外能夠按下面的順序學習,對於參考篇,能夠在用到裏面相關技術時再學習。spring
mall
項目的總體架構及功能介紹,同時對於新手推薦了一些相關書籍資料;mall
項目的架構搭建教程,手把手教你搭建一個mall
項目在使用的基本項目骨架;mall
項目電商業務相關教程,對於瞭解項目業務有很大幫助;mall
項目中的一些技術要點解析,主要介紹一些技術在項目中的運用;mall
項目的部署教程,包括Windows、Linux和自動化部署方案;mall
項目中所用技術和工具的入門教程,每一篇均可以單獨學習,對於mall
項目,這些教程的深刻程度都剛恰好。項目地址:github.com/macrozheng/…數據庫
《Spring Cloud學習教程》是一套涵蓋大部分核心組件使用的教程,包括Spring Cloud Alibaba及分佈式事務Seata,基於Spring Cloud Greenwich及SpringBoot 2.1.7。20篇文章,篇篇精華,30個Demo,涵蓋大部分應用場景。mall-swarm
項目中所用到的Spring Cloud技術該教程基本都涵蓋了,學習該教程能夠爲學習mall-swarm
項目打下良好的Spring Cloud基礎。後端
項目地址:github.com/macrozheng/…緩存
當咱們學習了《mall學習教程》和《Spring Cloud學習教程》以後就能夠着手學習mall-swarm
這個項目了。首先須要的就是按以前的教程把項目跑起來,而後進行源碼的學習,相信有了學習上面兩套教程的基礎,搞懂源碼並非什麼難事。下面提供下mall-swarm
的部署教程:安全
項目地址:github.com/macrozheng/…架構
最近發現有不少朋友使用mall-admin-web
項目來對接mall-swarm
項目,遇到了一些問題。這裏須要提醒一點,因爲咱們的mall-swarm
項目使用Spring Cloud Gateway做爲網關服務,因此前端請求都須要走網關服務,具體能夠參考《先後端分離項目,引入 Spring Cloud Gateway 遇到的一個問題!》。
mall項目全套學習教程連載中,關注公衆號第一時間獲取。