今天鹏哥给大家推荐的项目是一套电商系统,包括前台商城系统及后台管理系统,基于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. mybatis学习3

    parameterType(输入类型) 传递简单类型::使用#{}占位符,或者${}进行sql拼接 传递pojo对象: Mybatis使用ognl表达式解析对象字段的值,#{}或者${}括号中的值为p ...

  2. 使用plv8+hashids生成短链接服务

    有写过一个集成npm plv8 以及shortid生成短链接id服务,实际上我们可以集成触发器自动生成url对应的短链接地址,hashids也是一个不错的选择. 以下是一个别人写的一个博客实现可以参考 ...

  3. ESP8266 LUA脚本语言开发: 准备工作-动手编译LUA固件

    前言 这节咱自己编译LUA固件 准备一台linux的机子 我把固件放到了git上,方便电脑用http下载 我先用这个连接linux 大家随意哈,只要是一台linux的机子就可以,不管是图形页面还是命令 ...

  4. c# 文件夹权限

    /// <summary>         /// 创建文件路径         /// </summary>         /// <param name=" ...

  5. dijkstra算法的堆优化

    普通的dijkstra算法模板: //数据结构 int g[LEN][LEN]; //邻接矩阵 int vis[LEN]; //标记是否访问 int dist[LEN] //源点到各点的距离 fill ...

  6. Maven 基本概念——根目录、项目创建、坐标

     1. MavenProjectRoot(项目根目录)   |----src   |     |----main   |     |         |----java ——存放项目的.java文件  ...

  7. 你真的了解java的lambda吗?- java lambda用法与源码分析

    你真的了解java的lambda吗?- java lambda用法与源码分析 转载请注明来源:cmlanche.com 用法 示例:最普遍的一个例子,执行一个线程 new Thread(() -> ...

  8. .net core 中的多环境配置

    参考地址:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/environments?view=aspnetcore-2.2 官网说环 ...

  9. 管道通信——FIFO的代码实现

    一.用到的函数 umask         linux中的 umask 函数主要用于:在创建新文件或目录时 屏蔽掉新文件或目录不应有的访问允许权限.         文件的访问允许权限共有9种,分别是 ...

  10. [转帖]Linux操作系统定时任务系统 Cron 入门0

    Linux操作系统定时任务系统 Cron 入门 https://www.cnblogs.com/zhuiluoyu/p/5646400.html   cron是一个linux下的定时执行工具,可以在无 ...