# gulimall **Repository Path**: fry_666/gulimall ## Basic Information - **Project Name**: gulimall - **Description**: 学习雷神 gulimall(谷粒商城) 是一个综合性的B2C平台,包括前台商城系统以及后台管理系统,基于 SpringCloud + SpringCloudAlibaba + MyBatis-Plus实现,采用 Docker 容器化部署。前台商城系统包括:用户登录、注册;商品搜索、商品详情、购物车、下订单流程、秒杀活动等模块。后台管理系统包括:系统管理、商品系统、优惠营销、库存系统、订单系统、用户系统、内容管理等七大模块等。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 1 - **Created**: 2020-09-21 - **Last Updated**: 2023-05-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # gulimall(谷粒商城) #### 介绍 学习雷神 gulimall(谷粒商城) 是一个综合性的B2C平台,包括前台商城系统以及后台管理系统,基于 SpringCloud + SpringCloudAlibaba + MyBatis-Plus实现,采用 Docker 容器化部署。前台商城系统包括:用户登录、注册;商品搜索、商品详情、购物车、下订单流程、秒杀活动等模块。后台管理系统包括:系统管理、商品系统、优惠营销、库存系统、订单系统、用户系统、内容管理等七大模块等。 #### 软件架构 软件架构说明 ~~~java 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 -- 会员服务 ~~~ #### 项目演示图 ##### 前台部分功能演示效果 ![输入图片说明](https://images.gitee.com/uploads/images/2020/1021/101636_83c2a6a8_1993634.png "01426.png") ![](https://images.gitee.com/uploads/images/2020/0714/193422_0ed39103_4914148.png) ![输入图片说明](https://images.gitee.com/uploads/images/2020/1021/103219_edc771a0_1993634.png "10334.png") #### 后端技术 | 技术 | 说明 | 官网 | |--------------------|--------------|-------------------------------------------------| | 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 | ![输入图片说明](https://images.gitee.com/uploads/images/2020/1021/113445_b4eaf25c_1993634.png "773302.png") #### 架构图 ##### 系统架构图 ![](https://s1.ax1x.com/2020/07/14/UUvRAS.png) ##### 业务架构图 ![](https://images.gitee.com/uploads/images/2020/0714/193425_9bb153d1_4914148.png) #### 微服务-注册中心、配置中心、网关 ![输入图片说明](https://images.gitee.com/uploads/images/2020/1021/114059_cb137f15_1993634.png "123221321321312_113913.png") #### 安装教程 ##### 环境搭建 ##### 开发工具 |工具 | 说明 | 官网 | |-------------|--------------------- |-------------------------------------| |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| #### 搭建步骤 ~~~java Windows环境部署 修改本机的host文件,映射域名端口 192.168.56.100 gulimall.com 192.168.56.100 search.gulimall.com 192.168.56.100 item.gulimall.com 192.168.56.100 auth.gulimall.com 192.168.56.100 cart.gulimall.com 192.168.56.100 order.gulimall.com 192.168.56.100 member.gulimall.com 192.168.56.100 seckill.gulimall.com 以上端口换成自己Linux的ip地址 ~~~ 修改Linux中Nginx的配置文件 1、在nginx.conf中添加负载均衡的配置 upstream gulimall { server 192.168.43.182:88; } 2、在gulimall.conf中添加如下配置 server { listen 80; server_name gulimall.com *.gulimall.com hjl.mynatapp.cc; #charset koi8-r; #access_log /var/log/nginx/log/host.access.log main; #配置静态资源的动态分离 location /static/ { root /usr/share/nginx/html; } #支付异步回调的一个配置 location /payed/ { proxy_set_header Host order.gulimall.com; #不让请求头丢失 proxy_pass http://gulimall; } location / { #root /usr/share/nginx/html; #index index.html index.htm; proxy_set_header Host $host; #不让请求头丢失 proxy_pass http://gulimall; } 克隆前端项目 renren-fast-vue 以 npm run dev 方式去运行 克隆整个后端项目 gulimall ,并导入 IDEA 中完成编译 如果你喜欢,要是觉得对你有帮助的话,请点个赞是对我最大的支持! #### 使用说明 1. 学习使用 2. 开源 3. 特别鸣谢人人开源 [人人开源官网](https://gitee.com/jiangli31346337) ##如果大家喜欢,请点个赞是对我最大的支持!大家一起学习进步