简介
一个基于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...
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。