2

简介

一个基于spring boot、spring oauth2.0、mybatis、redis的轻量级、前后端分离、防范xss攻击、拥有分布式锁,为生产环境多实例完全准备,数据库为b2b2c设计,拥有完整sku和下单流程的完全开源商城。

Mall4j项目致力于为中小企业打造一个完整、易于维护的开源的电商系统,采用现阶段流行技术实现。后台管理系统包含商品管理、订单管理、运费模板、规格管理、会员管理、运营管理、内容管理、统计报表、权限管理、设置等模块。

源码

项目链接

java后台:https://gitee.com/gz-yami/mall4j
vue后台前端:https://gitee.com/gz-yami/mall4v
小程序:https://gitee.com/gz-yami/mall4m

演示地址

由于我们并不希望小程序的数据被弄混乱,我们弄了两个数据库。因此,您修改了后台的商品信息,小程序并不能看到!
后台:http://mall4j-admin.gz-yami.com 账号:admin/123456

技术选型

技术版本说明Spring Boot2.1.6MVC核心框架Spring Security oauth22.1.5认证和授权框架MyBatis3.5.0ORM框架MyBatisPlus3.1.0基于mybatis,使用lambda表达式的Swagger-UI2.9.2文档生产工具Hibernator-Validator6.0.17验证框架redisson3.10.6对redis进行封装、集成分布式锁等hikari3.2.0数据库连接池log4j22.11.2更快的log日志工具fst2.57更快的序列化和反序列化工具orika1.5.4更快的bean复制工具lombok1.18.8简化对象封装工具hutool4.5.0更适合国人的java工具集swagger-bootstrap1.9.3基于swagger,更便于国人使用的swagger ui

快速部署

1.开发环境
以下是最低的环境要求:
工具版本jdk1.8+mysql5.7+redis3.2+

2.启动

  • 推荐使用idea,安装lombok插件后,使用idea导入maven项目
  • 将yami_shop.sql导入到mysql中,修改application-dev.yml更改 datasource.url、user、password
  • 将mysql配置为不区分表名大小写(定时任务需要)
  • 通过修改ma.properties 修改微信小程序信息
  • 通过修改mp.properties 修改微信公众号信息
  • 通过修改pay.properties 修改微信支付信息
  • 通过修改shop.properties 修改七牛云、阿里大于等信息
  • 修改api.properties 修改当前接口所在域名,用于支付回调
  • 启动redis,端口6379
  • 通过WebApplication启动项目后台接口,ApiApplication 启动项目前端接口

关于如何启动可以参考视频: https://www.bilibili.com/vide...
关于授权流程可以参考视频:https://www.bilibili.com/vide...

运行效果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


xiangzhihong
5.9k 声望15.3k 粉丝

著有《React Native移动开发实战》1,2,3、《Kotlin入门与实战》《Weex跨平台开发实战》、《Flutter跨平台开发与实战》1,2和《Android应用开发实战》