今天鹏哥给大家推荐的项目是一套电商系统,包括前台商城系统及后台管理系统,基于SpringBoot+MyBatis实现。 前台商城系统包含首页门户、商品推荐、商品搜索、商品展示、购物车、订单流程、会员中心、客户服务、帮助中心等模块。 后台管理系统包含商品管理、订单管理、会员管理、促销管理、运营管理、内容管理、统计报表、财务管理、权限管理、设置等模块。同时这个项目也是难道的既有后端UI还有移动端UI的开源项目。该项目致力于打造一个完整的电商系统,采用现阶段流行技术实现。

项目地址

https://github.com/macrozheng/mall

项目文档

https://macrozheng.github.io/mall-learning/#/foreword/mall_foreword_01

鹏哥收集的项目都有一个通点,那就是文档特别全。任何没有文档的开源项目都是耍流氓。一般情况我么找开源项目不外乎学习新框架,私活脚手架,公司任务需要几种。如果没有一个详细的文档,全靠读别人的代码,还不如自己根据官方教程写一个呢!所以鹏哥对文档特别敏感,我们来感受一下这个项目的文档:



项目结构

mall
├── mall-common -- 工具类及通用代码
├── mall-mbg -- MyBatisGenerator生成的数据库操作代码
├── mall-admin -- 后台商城管理系统接口
├── mall-search -- 基于Elasticsearch的商品搜索系统
├── mall-portal -- 前台商城系统接口
└── mall-demo -- 框架搭建时的测试代码

项目中用到的技术

后端技术:

  • Spring Boot 容器+MVC框架
  • Spring Security 认证和授权框架
  • MyBatis ORM框架
  • MyBatisGenerator 数据层代码生成
  • PageHelper MyBatis物理分页插件
  • Swagger-UI 文档生产工具
  • Hibernator-Validator 验证框架
  • Elasticsearch 搜索引擎
  • RabbitMq 消息队列
  • Redis 分布式缓存
  • MongoDb NoSql数据库
  • Docker 应用容器引擎
  • Druid 数据库连接池
  • OSS 对象存储
  • JWT JWT登录支持
  • LogStash 日志收集
  • Lombok 简化对象封装工具

前端技术:

  • Vue 前端框架
  • Vue-router 路由框架
  • Vuex 全局状态管理框架
  • Element 前端UI框架
  • Axios 前端HTTP框架
  • v-charts 基于Echarts的图表框架
  • Js-cookie cookie管理工具
  • nprogress 进度条控件

开发环境版本要求:

  • JDK 1.8
  • Mysql 5.7
  • Redis 3.2
  • Elasticsearch 6.2.2
  • MongoDb 3.2
  • RabbitMq 3.7.14
  • nginx 1.10

架构图

系统架构图



业务架构图



系统功能:



表设计:



系统演示:

后台功能截图:

首页:



商品相关页面截图:



添加商品页面



订单相关页面截图



营销相关页面截图



移动端界面截图:

首页:



分类页面:



专题页面:



我的信息页面:



记得前一段时间鹏哥读作者分享的关于这个项目的始末,鹏哥特别佩服作者可以一步一步的搭建起这个项目,并一偏偏的编写相关的文档,如此大公无私的分享经验的人怎么会不让人尊敬?

SpringBoot+Security+MyBatis+ES+MQ+Redis+Docker+Vue的电商系统的更多相关文章

  1. 手把手教你使用VUE+SpringMVC+Spring+Mybatis+Maven构建属于你自己的电商系统之vue后台前端框架搭建——猿实战01

            猿实战是一个原创系列文章,通过实战的方式,采用前后端分离的技术结合SpringMVC Spring Mybatis,手把手教你撸一个完整的电商系统,跟着教程走下来,变身猿人找到工作不是 ...

  2. 基于SpringBoot+MyBatis实现一套电商系统

    项目介绍 mall项目是一套电商系统,包括前台商城系统及后台管理系统,基于SpringBoot+MyBatis实现. 前台商城系统包含首页门户.商品推荐.商品搜索.商品展示.购物车.订单流程.会员中心 ...

  3. SpringBoot之Mybatis操作中使用Redis做缓存

    上一博客学习了SpringBoot集成Redis,今天这篇博客学习下Mybatis操作中使用Redis做缓存.这里其实主要学习几个注解:@CachePut.@Cacheable.@CacheEvict ...

  4. java 全端开源 电商系统 springboot uniapp 小程序 前后端分离 高可用

    Lilishop B2B2C商城系统 官方公众号 & 开源不易,如有帮助请点Star 所有jar包均可从maven中央仓库下载,无二次封装jar包,全端开源,无后门,无监控. 介绍 官网:ht ...

  5. vue大型电商项目尚品汇(前台篇)day01

    学完vue2还是决定先做一个比较经典,也比较大的项目来练练手好一点,vue3的知识不用那么着急,先把vue2用熟练了,vue3随时都能学. 这个项目确实很经典包含了登录注册.购物车电商网站该有的都有, ...

  6. spring-boot集成mybatis,用redis做缓存

    网上有很多例子了,执行源码起码有3个,都是各种各样的小问题. 现在做了个小demo,实现spring-boot 用redis做缓存的实例,简单记录下思路,分享下源码. 缓存的实现,分担了数据库的压力, ...

  7. 微服务架构开发电商系统需要用Redis、ES和MQ吗?

    如果不用什么很高大上的东西,就是有多个微服务就行这种技术架构会很难吗? 我看了一些视频,他们都用到了es.mq.redis的东西,我想不用这些东西,就简单的有多个服务,这样可行吗? 01 使用微服务你 ...

  8. 电商系统架构总结2(Redis)

    二  Redis缓存 考虑到将来服务器的升级扩展,使用redis代替.net内置缓存是比较理想的选择.redis是非常成熟好用的缓存系统,安装配置非常简单,直接上官网下载安装包 安装启动就行了. 1 ...

  9. Vue+Python 电商实战

    安装webStorm  https://blog.csdn.net/qq_38845858/article/details/89850737 安装NodeJs  http://nodejs.cn/do ...

随机推荐

  1. 阿里巴巴java开发手册 注释规约

  2. java 多态(向上转型)

    多态的定义与使用格式 多态的定义格式:就是父类的引用变量指向子类对象 父类类型  变量名 = new 子类类型(); 变量名.方法名(); 普通类多态定义的格式 父类 变量名 = new 子类(); ...

  3. ES6基础-ES6的扩展

    进行对字符串扩展,正则扩展,数值扩展,函数扩展,对象扩展,数组扩展. 开发环境准备: 编辑器(VS Code, Atom,Sublime)或者IDE(Webstorm) 浏览器最新的Chrome 字符 ...

  4. nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件

    前言一.nginx简介1. 什么是 nginx 和可以做什么事情Nginx 是高性能的 HTTP 和反向代理的web服务器,处理高并发能力是十分强大的,能经受高负 载的考验,有报告表明能支持高达 50 ...

  5. Salesforce 开发整理(三)权限共享

    Salesforce提供对象的访问权限可以通过 安全性控制 → 共享设置,可以查看每个对象在系统内部默认的访问权限 共用读写:对象的记录任何用户都可以进行读写操作 公用只读:对象的记录任何用户都可以查 ...

  6. xcode选项Build Active Architecture Only的作用

    Build Active Architecture Only 设置: 设置为NO的时候,会导致react-native项目启动失败npx react-native run-ios 根据错误信息 bui ...

  7. barbor部署

    harbor 部署介绍: 1.版本信息 系统 :Centos 7.5 版本: harbor-offline-installer-v1.8.1 docker :docker-ce-18.06.2.ce- ...

  8. jenkins pipeline使用方式

    pipeline 使用 使用groovy的一种DSL语言,流程控制 pipeline脚本同其他脚本语言一样,从上到下顺序执行,它的流程控制取决于Groovy表达式,为jenkins用户提供了更巨大的灵 ...

  9. SQLite中字段顺序和PAGE_SIZE对性能的影响

    1.背景 SQLite数据库中有1张表,该表含若干个字段,其中有1个字段为BLOB类型,且BLOB字段不是最后1个字段.表结构类似如下(col3为BLOB字段): T (col1 INTEGER,co ...

  10. 从有序矩阵M x N中找出是否包含某一个数,要求时间复杂度为O(M+N)

    有序指的是每行从左到右依次变大,每列从上到下依次变大 思路: 从右上顶点开始依次判断当前值与给定值的大小,往左下顶点移动,结束条件是下标超过范围 public class FindNumInOrder ...