溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

發(fā)布時(shí)間:2020-07-29 22:04:09 來源:網(wǎng)絡(luò) 閱讀:814 作者:wx5d6cccb1cb158 欄目:編程語言

去年12月的時(shí)候,mall項(xiàng)目正式發(fā)布,作為Github上面最火的SpringBoot實(shí)戰(zhàn)電商項(xiàng)目,累計(jì)獲得了25000+Star。今年還是12月,mall項(xiàng)目微服務(wù)版本mall-swarm正式發(fā)布,
項(xiàng)目介紹

mall-swarm是一套微服務(wù)商城系統(tǒng),采用了 Spring Cloud Greenwich、Spring Boot 2、MyBatis、Docker、Elasticsearch等核心技術(shù),同時(shí)提供了基于Vue的管理后臺(tái)方便快速搭建系統(tǒng)。mall-swarm在電商業(yè)務(wù)的基礎(chǔ)集成了注冊(cè)中心、配置中心、監(jiān)控中心、網(wǎng)關(guān)等系統(tǒng)功能。

系統(tǒng)架構(gòu)圖
SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

組織結(jié)構(gòu)

mall
├── mall-common -- 工具類及通用代碼模塊
├── mall-mbg -- MyBatisGenerator生成的數(shù)據(jù)庫(kù)操作代碼模塊
├── mall-security -- 封裝SpringSecurity+JWT的安全認(rèn)證的模塊
├── mall-registry -- 基于Eureka的微服務(wù)注冊(cè)中心
├── mall-config -- 基于Spring Cloud Config的微服務(wù)配置中心
├── mall-gateway -- 基于Spring Cloud Gateway的微服務(wù)API網(wǎng)關(guān)服務(wù)
├── mall-monitor -- 基于Spring Boot Admin的微服務(wù)監(jiān)控中心
├── mall-admin -- 后臺(tái)管理系統(tǒng)服務(wù)
├── mall-search -- 基于Elasticsearch的商品搜索系統(tǒng)服務(wù)
├── mall-portal -- 移動(dòng)端商城系統(tǒng)服務(wù)
└── mall-demo -- 微服務(wù)遠(yuǎn)程調(diào)用測(cè)試服務(wù)

項(xiàng)目文檔

項(xiàng)目文檔mall系列教程:www.macrozheng.com
配套Spring Cloud系列教程:github.com/macrozheng/…
項(xiàng)目演示

后臺(tái)管理系統(tǒng): www.macrozheng.com/admin/index…
移動(dòng)端商城系統(tǒng):www.macrozheng.com/app/index.h…
技術(shù)選型

后端技術(shù)
SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

前端技術(shù)
SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

環(huán)境搭建

開發(fā)環(huán)境搭建

mall-swarm中使用到的環(huán)境和mall項(xiàng)目中大致相同,具體可以查看mall在Windows環(huán)境下的部署。
簡(jiǎn)易環(huán)境搭建流程:

安裝IDEA并導(dǎo)入項(xiàng)目源碼;
安裝MySql,創(chuàng)建一個(gè)mall數(shù)據(jù)庫(kù),并導(dǎo)入/document/sql/mall.sql文件;
安裝Redis、Elasticsearch、MongoDB、RabbitMQ等環(huán)境。
項(xiàng)目部署

mall-swarm項(xiàng)目啟動(dòng)有先后順序,大家要按照以下順序啟動(dòng)。
啟動(dòng)注冊(cè)中心mall-registry

直接運(yùn)行com.macro.mall.MallRegistryApplication的main函數(shù)即可;
運(yùn)行完成后可以通過注冊(cè)中心控制臺(tái)查看:http://localhost:8001
啟動(dòng)配置中心mall-config

直接運(yùn)行com.macro.mall.MallConfigApplication的main函數(shù)即可;
訪問以下接口獲取mall-admin在dev環(huán)境下的配置信息:http://localhost:8301/master/admin-dev.yml
啟動(dòng)監(jiān)控中心mall-monitor

直接運(yùn)行com.macro.mall.MallMonitorApplication的main函數(shù)即可;
運(yùn)行完成后可以通過監(jiān)控中心控制臺(tái)查看:http://localhost:8101
輸入賬號(hào)密碼macro:123456可以登錄查看。
啟動(dòng)網(wǎng)關(guān)服務(wù)mall-gateway

直接運(yùn)行com.macro.mall.MallGatewayApplication的main函數(shù)即可;
訪問以下接口獲取動(dòng)態(tài)路由規(guī)則:http://localhost:8201/actuator/gateway/routes
啟動(dòng)后臺(tái)管理服務(wù)mall-admin

直接運(yùn)行com.macro.mall.MallAdminApplication的main函數(shù)即可;
通過mall-gateway網(wǎng)關(guān)服務(wù)訪問接口文檔:http://localhost:8201/mall-admin/swagger-ui.html

SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

登錄接口地址:http://localhost:8201/mall-admin/admin/login
訪問登錄接口獲取到token后放入認(rèn)證的頭信息即可正常訪問其他需要登錄的接口:
SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

啟動(dòng)前臺(tái)服務(wù)mall-portal

直接運(yùn)行com.macro.mall.portal.MallPortalApplication的main函數(shù)即可;
通過mall-gateway網(wǎng)關(guān)服務(wù)訪問接口文檔:http://localhost:8201/mall-portal/swagger-ui.html
SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

登錄接口地址:http://localhost:8201/mall-portal/sso/login
調(diào)用需要登錄的接口方式同mall-admin。
啟動(dòng)搜索服務(wù)mall-search

直接運(yùn)行com.macro.mall.search.MallSearchApplication的main函數(shù)即可;
通過mall-gateway網(wǎng)關(guān)服務(wù)訪問接口文檔:http://localhost:8201/mall-search/swagger-ui.html
SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

啟動(dòng)測(cè)試服務(wù)mall-demo

直接運(yùn)行com.macro.mall.MallAdminApplication的main函數(shù)即可;
通過mall-gateway網(wǎng)關(guān)服務(wù)訪問接口文檔:http://localhost:8201/mall-demo/swagger-ui.html
SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

可以通過調(diào)用FeignAdminController、FeignPortalController、FeignSearchController來測(cè)試使用Feign的遠(yuǎn)程調(diào)用功能。
效果展示

注冊(cè)中心服務(wù)信息:
SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

監(jiān)控中心服務(wù)概覽信息:
SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

監(jiān)控中心單應(yīng)用詳情信息:
SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

SpringBoot實(shí)戰(zhàn)電商項(xiàng)目mall出SpringCloud版本啦

擴(kuò)展解決方案

如果想使用Consul作為注冊(cè)及配置中心的話請(qǐng)參考:Spring Cloud Consul:服務(wù)治理與配置中心
如果想使用Nacos作為注冊(cè)及配置中心的話請(qǐng)參考:Spring Cloud Alibaba:Nacos 作為注冊(cè)中心和配置中心使用
分布式事務(wù)解決方案請(qǐng)參考:使用Seata徹底解決Spring Cloud中的分布式事務(wù)問題!
ELK日志收集系統(tǒng)的搭建請(qǐng)參考:SpringBoot應(yīng)用整合ELK實(shí)現(xiàn)日志收集。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI