前言
gulimall` 項目致力於打造一個完整的電商系統,采用現階段流行技術來實現,采用前后端分離繼續編寫。
項目API接口文檔
項目介紹
gulimall(谷粒商城) 項目是一套電商項目,包括前台商城系統以及后台管理系統,基於 SpringCloud + SpringCloudAlibaba + MyBatis-Plus實現,采用 Docker 容器化部署。前台商城系統包括:用戶登錄、注冊、商品搜索、商品詳情、購物車、下訂單流程、秒殺活動等模塊。后台管理系統包括:系統管理、商品系統、優惠營銷、庫存系統、訂單系統、用戶系統、內容管理等七大模塊。
項目演示
前台部分功能演示效果
后端登錄界面
主頁面
后台部分功能
組織結構
gulimall
├── gulimall-common -- 工具類及通用代碼 ├── renren-generator -- 人人開源項目的代碼生成器 ├── gulimall-auth-server -- 認證中心(社交登錄、OAuth2.0、單點登錄) ├── gulimall-cart -- 購物車服務 ├── gulimall-coupon -- 優惠卷服務 ├── gulimall-gateway -- 統一配置網關 ├── gulimall-order -- 訂單服務 ├── gulimall-product -- 商品服務 ├── gulimall-search -- 檢索服務 ├── gulimall-seckill -- 秒殺服務 ├── gulimall-third-party -- 第三方服務 ├── gulimall-ware -- 倉儲服務 └── gulimall-member -- 會員服務
技術選型
后端技術
技術 | 說明 | 官網 |
---|---|---|
SpringBoot | 容器+MVC框架 | https://spring.io/projects/spring-boot |
SpringCloud | 微服務架構 | https://spring.io/projects/spring-cloud |
SpringCloudAlibaba | 一系列組件 | https://spring.io/projects/spring-cloud-alibaba |
MyBatis-Plus | ORM框架 | https://mp.baomidou.com |
renren-generator | 人人開源項目的代碼生成器 | https://gitee.com/renrenio/renren-generator |
Elasticsearch | 搜索引擎 | https://github.com/elastic/elasticsearch |
RabbitMQ | 消息隊列 | https://www.rabbitmq.com |
Springsession | 分布式緩存 | https://projects.spring.io/spring-session |
Redisson | 分布式鎖 | https://github.com/redisson/redisson |
Docker | 應用容器引擎 | https://www.docker.com |
OSS | 對象雲存儲 | https://github.com/aliyun/aliyun-oss-java-sdk |
前端技術
技術 | 說明 | 官網 |
---|---|---|
Vue | 前端框架 | https://vuejs.org |
Element | 前端UI框架 | https://element.eleme.io |
thymeleaf | 模板引擎 | https://www.thymeleaf.org |
node.js | 服務端的js | https://nodejs.org/en |
架構圖
系統架構圖
業務架構圖
環境搭建
開發工具
工具 | 說明 | 官網 |
---|---|---|
IDEA | 開發Java程序 | https://www.jetbrains.com/idea/download |
RedisDesktop | redis客戶端連接工具 | https://redisdesktop.com/download |
SwitchHosts | 本地host管理 | https://oldj.github.io/SwitchHosts |
X-shell | Linux遠程連接工具 | http://www.netsarang.com/download/software.html |
Navicat | 數據庫連接工具 | http://www.formysql.com/xiazai.html |
PowerDesigner | 數據庫設計工具 | http://powerdesigner.de |
Postman | API接口調試工具 | https://www.postman.com |
Jmeter | 性能壓測工具 | https://jmeter.apache.org |
Typora | Markdown編輯器 | https://typora.io |
開發環境
工具 | 版本號 | 下載 |
---|---|---|
JDK | 1.8 | https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html |
Mysql | 5.7 | https://www.mysql.com |
Redis | Redis | https://redis.io/download |
Elasticsearch | 7.6.2 | https://www.elastic.co/downloads |
Kibana | 7.6.2 | https://www.elastic.co/cn/kibana |
RabbitMQ | 3.8.5 | http://www.rabbitmq.com/download.html |
Nginx | 1.1.6 | http://nginx.org/en/download.html |
注意:以上的除了jdk都是采用docker方式進行安裝,詳細安裝步驟可參考百度!!!