一个基于spring boot、spring oauth2.0、mybatis、redis的轻量级、前后端分离、防范xss攻击、拥有分布式锁,为生产环境多实例完全准备,数据库为b2b2c设计,拥有完整sku和下单流程的完全开源商城
前言
Mall4j项目致力于为中小企业打造一个完整、易于维护的开源的电商系统,采用现阶段流行技术实现。后台管理系统包含商品管理、订单管理、运费模板、规格管理、会员管理、运营管理、内容管理、统计报表、权限管理、设置等模块。
技术选型
技术 版本 说明 Spring Boot 2.1.6 MVC核心框架 Spring Security oauth2 2.1.5 认证和授权框架 MyBatis 3.5.0 ORM框架 MyBatisPlus 3.1.0 基于mybatis,使用lambda表达式的 Swagger-UI 2.9.2 文档生产工具 Hibernator-Validator 6.0.17 验证框架 redisson 3.10.6 对redis进行封装、集成分布式锁等 hikari 3.2.0 数据库连接池 log4j2 2.11.2 更快的log日志工具 fst 2.57 更快的序列化和反序列化工具 orika 1.5.4 更快的bean复制工具 lombok 1.18.8 简化对象封装工具 hutool 4.5.0 更适合国人的java工具集 swagger-bootstrap 1.9.3 基于swagger,更便于国人使用的swagger ui 部署教程
1.开发环境
以下版本是最低要求的!!! 提问问题前请注意开发环境!!
工具 版本 jdk 1.8+ mysql 5.7+ redis 3.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 启动项目前端接口