一、项目介绍

mallplus项目是一套电商系统,包括前台商城系统及后台管理系统,小程序,h5,基于SpringBoot+MyBatis实现。

前台商城系统包含首页门户、商品推荐、商品搜索、商品展示、购物车、订单流程、会员中心、客户服务、帮助中心等模块。

后台管理系统包含商品管理、订单管理、会员管理、促销管理、运营管理、内容管理、统计报表、财务管理、权限管理、代码生成设置等模块 分销商城,积分商城

二、案例展示

  • 后台项目演示:http://www.yjlive.cn:8090/

  • 移动端项目演示:http://www.yjlive.cn:8082/

  • pc项目演示:http://www.yjlive.cn:8088/


  • 三、项目结构

    mall

    ├── mallplus-mbg -- MyBatisGenerator生成的数据库操作代码

    ├── mallplus-admin -- 后台商城管理系统接口

    ├── mall-search -- 基于Elasticsearch的商品搜索系统

    ├── mallplus-portal -- 前台商城系统接口

    └── mall-demo -- 框架搭建时的测试代码

    ├── 前端项目--`mallplus-admin-web

    ├── h5前端项目--`vue-js-master`

    ├── pc前端项目--`Mall-Vue-master`

    ├── 小前端项目--`wechatapp`

    四、技术架构

  • cms_*:内容管理模块相关表

  • oms_*:订单管理模块相关表

  • pms_*:商品模块相关表

  • sms_*:营销模块相关表

  • ums_*:会员模块相关表

    五.mall中使用的技术

  • mall采用现阶主流技术实现,涵盖了一般项目中几乎所有使用的技术。

  • 技术 版本 说明

  • Spring Boot 2.1.3 容器+MVC框架

  • Spring Security 5.1.4 认证和授权框架

  • MyBatis-plus 3.4.6 ORM框架

  • MyBatisGenerator 1.3.3 数据层代码生成

  • PageHelper 5.1.8 MyBatis物理分页插件

  • Swagger-UI 2.7.0 文档生产工具

  • Elasticsearch 6.2.2 搜索引擎

  • RabbitMq 3.7.14 消息队列

  • Redis 3.2 分布式缓存

  • MongoDb 3.2 NoSql数据库

  • Docker 18.09.0 应用容器引擎

  • Druid 1.1.10 数据库连接池

  • OSS 2.5.0 对象存储

  • JWT 0.9.0 JWT登录支持

  • Lombok 1.18.6 简化对象封装工具

# mallcloud-platform

springcloud版本商城  https://gitee.com/catshen/zscat_sw

## 如果您觉得有帮助,请点右上角 "Star" 支持一下谢谢

[TOC]

## 1. 项目介绍

  * 账号密码:admin/admin

  * 应用监控账号密码:admin/admin

  * 配置中心账号密码:nacos/nacos

  * APM监控账号密码:admin/admin

  * Grafana账号:mall/mall

  * txlcn事务管理器密码:admin

  * 任务管理账号密码:admin/123456

* **演示环境有全方位的监控示例:日志系统 + APM系统 + GPE系统**

* 前后端分离的企业级微服务架构

* 基于`Spring Boot 2.0.X`、`Spring Cloud Finchley`和`Spring Cloud Alibaba`

* 深度定制`Spring Security`真正实现了基于`RBAC`、`jwt`和`oauth2`的无状态统一权限认证的解决方案

* 提供应用管理,方便第三方系统接入

* 引入组件化的思想实现高内聚低耦合,项目代码简洁注释丰富上手容易

* 注重代码规范,严格控制包依赖,每个工程基本都是最小依赖

* 非常适合学习和企业中使用

> cloud框架和组件来源:https://gitee.com/owenwangwen/open-capacity-platform

 https://gitee.com/zlt2000/microservices-platform

> 业务逻辑来源:https://github.com/shenzhuan/mallplus

 

## 2. 项目总体架构图

## 3. 功能介绍

* **统一认证功能**

  * 支持oauth2的四种模式登录

  * 支持用户名、密码加图形验证码登录

  * 支持手机号加密码登录

  * 支持openId登录

  * 支持第三方系统单点登录

* **分布式系统基础支撑**

  * 服务注册发现、路由与负载均衡

  * 服务降级与熔断

  * 服务限流(url/方法级别)

  * 统一配置中心

  * 统一日志中心

  * 统一分布式缓存操作类、cacheManager配置扩展

  * 分布式锁

  * 分布式任务调度器

  * 支持CI/CD持续集成(包括前端和后端)

  * 分布式高性能Id生成器

  * 分布式事务

* **系统监控功能**

  * 服务调用链监控

  * 应用拓扑图

  * 慢服务检测

  * 服务Metric监控

  * 应用监控(应用健康、JVM、内存、线程)

  * 错误日志查询

  * 慢查询SQL监控

  * 应用吞吐量监控(qps、rt)

  * 服务降级、熔断监控

  * 服务限流监控

  * 分库分表、读写分离

* **业务基础功能支撑**

  * 高性能方法级幂等性支持

  * RBAC权限管理,实现细粒度控制(方法、url级别)

  * 快速实现导入、导出功能

  * 数据库访问层自动实现crud操作

  * 代码生成器

  * 基于Hutool的各种便利开发工具

  * 网关聚合所有服务的Swagger接口文档

  * 统一跨域处理

  * 统一异常处理

 

## 4. 模块说明

```lua

mallcloud -- 父项目,公共依赖

│  ├─mall-business -- 业务模块一级工程

│  │  ├─user-center -- 用户中心[7000]

│  │  ├─file-center -- 文件中心[5000]

│  │  ├─member-center -- 会员中心[7001]

│  │  ├─goods-center -- 商品中心[7002]

│  │  ├─order-center -- 订单中心[7003]

│  │  ├─marking-center -- 营销中心[7004]

│  │─mall-commons -- 通用工具一级工程

│  │  ├─mall-auth-client-spring-boot-starter -- 封装spring security client端的通用操作逻辑

│  │  ├─mall-common-spring-boot-starter -- 封装通用操作逻辑

│  │  ├─mall-db-spring-boot-starter -- 封装数据库通用操作逻辑

│  │  ├─mall-log-spring-boot-starter -- 封装log通用操作逻辑

│  │  ├─mall-redis-spring-boot-starter -- 封装Redis通用操作逻辑

│  │  ├─mall-ribbon-spring-boot-starter -- 封装Ribbon和Feign的通用操作逻辑

│  │  ├─mall-sentinel-spring-boot-starter -- 封装Sentinel的通用操作逻辑

│  │  ├─mall-swagger2-spring-boot-starter -- 封装Swagger通用操作逻辑

│  ├─mall-config -- 配置中心

│  ├─mall-doc -- 项目文档

│  ├─mall-gateway -- api网关一级工程

│  │  ├─zuul-gateway -- netflix-zuul[8080]

│  ├─mall-job -- 分布式任务调度一级工程

│  │  ├─job-admin -- 任务管理器[8081]

│  │  ├─job-core -- 任务调度核心代码

│  │  ├─job-executor-samples -- 任务执行者executor样例[8082]

│  ├─mall-monitor -- 监控一级工程

│  │  ├─sc-admin -- 应用监控[6500]

│  │  ├─log-center -- 日志中心[6200]

│  ├─mall-uaa -- spring-security认证中心[8000]

│  ├─mall-register -- 注册中心Nacos[8848]

│  ├─mall-web -- 前端一级工程

│  │  ├─back-web -- 后台前端[8066]

│  ├─mall-transaction -- 事务一级工程

│  │  ├─txlcn-tm -- tx-lcn事务管理器[7970]

│  ├─mall-demo -- demo一级工程

│  │  ├─txlcn-demo -- txlcn的demo

│  │  ├─sharding-jdbc-demo -- sharding-jdbc的demo

```

前期准备

1. 在idea安装lombok插件

1. 在idea安装MybatisX Plugin插件(选装)

1. 准备好数据库5.7+或8.0.14+

1. 初始化数据库

1. 脚本路径:根目录 mallcloud.sql

1. 准备好Redis

1. 准备好注册中心Nacos

1. 启动命令地址:mall-register\nacos\bin

1. Linux/Unix/Mac

1. 启动命令(standalone代表着单机模式运行,非集群模式):

1. sh startup.sh -m standalone

1. Windows

1. 启动命令:

1. cmd startup.cmd

1. 或者双击startup.cmd运行文件

1. 修改mall-config/src/main/resources/application-dev.properties里面的配置参数

1. 数据库配置

1. redis配置

1. elasticsearch配置

1. 非必须,如果不启用日志功能可不管

1. sentinel配置

1. 非必须,主要是用于展示应用吞吐量

1. 修改每个工程的bootstrap.yml文件里的nacos地址参数,如nacos是在本机启动的话就改为以下地址

*  mall:

*    nacos:

*      server-addr: 127.0.0.1:8848

1. 项目启动:

1. 启动认证中心mall-uaa

1. 启动用户中心mall-bussiness/user-center

1. 启动网关mall-gateway/zuul-gateway

1. * 下面是业务模块,不一定需要全部启动

1. 启动订单中心mall-bussiness/order-center

1. 启动会员中心mall-bussiness/member-center

1. 启动商品中心mall-bussiness/goods-center

1. 启动营销中心mall-bussiness/marking-center

1. 启动内容中心mall-bussiness/cms-center

1. 启动前端工程:解压跟目录的mallcloud-admin-vue.zip,为后台管理的vue前端,

1. 需要安装nodejs环境,然后进入此目录,npm install ,成功后执行 npm run dev

mallplus商户平台端小程序 + APP + 公众号  + H5 操作文档

mallplus多商户商城 操作文档

基于SpringBoot+MyBatis+VUE的开源多商户商城系统,可二次开发

mallplus多商户商城 二级分销操作文档

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐