项目介绍
项目地址:https://gitee.com/bootx/bootx-platform
基于Spring Boot框架打造,针对单体式应用进行专门设计,提供整套服务模块,努力为打造全方位企业级开发解决方案, 致力将开源版打造成超越商业版后台管理框架的项目。
特色功能
- 针对敏感信息,可以通过注解配置实现返回时自动脱敏
- 针对重要信息,可以通过添加注解,实现在数据库中保密存储,配合数据脱敏使用可以更好的保护系统数据的安全
- 支持多种范围的数据权限控制,如只能查看自己、只能查询指定部门、用户、可以查询全部的数据等等
- 支持嵌套查询的超级查询构造器,自动生成对应条件SQL语句
- 异常时返回链路追踪id,方便错误日志追踪
- 提供项目对应的代码生成器,方便开发
- 定制Mybatis Plus组件,更方便开发
- 支持多种消息中间件
- 支持全局级Websocket集成,通过事件机制可以分发到指定页面
项目选用组件说明
组件 |
默认启用 |
是否必须 |
备注 |
MySQL |
是 |
否,理论上可以替换为其他关系型数据库 |
默认使用的数据库,部分SQL语句使用了MySQL专属语法 |
Redis |
是 |
是 |
session存储,缓存等等都用到了Redis |
RabbitMQ |
是 |
否 |
不使用时需要删除对应的代码即可 |
MongoDB |
是 |
否 |
日志存储默认使用的Mongo,去掉mongo时需要切换存储类型; 文件管理默认使用的是Mongo,去掉Mongo时,需要切换文件类型 |
MQTT |
是 |
否 |
不使用时需要删除对应的代码即可 |
Quartz |
是 |
否 |
定时任务默认使用的是 Quartz ,可以切换为XXL-JOB |
XXL-JOB |
否 |
否 |
可以用来替代Quartz |
本次功能更新
- 增加用户全局消息Websocket推送,通过前端消息总线可以方便把消息推送到各个页面
- 增加flyway来对数据库进行管理
- 增加plumelog(lite)方式收集日志,方便对日志进行简单的管理
- 增加ELK相关配置,优化日志输出格式
- 增加不同的终端可以有不同的菜单权限列表
- 增加RabbitMQ消息队列模块
- 增加Redis简单消息队列方式,实现简单消息队列功能
- 增加Redis过期事件封装,实现定时消息通知功能
- 增加Redis简单消息队列和过期事件封装演示
- 增加Websocket模块及演示DEMO
- 增加分布式锁组件
- 增加分布式锁演示模块
- 网上商城配套开发
- 类目管理及相关规格、品牌、参数管理
- 升级Spring Boot为2.7.x版本
- 优化Redis支持集群配置
- 优化logback相关xml,拆分更细粒度
- 优化定时任务增加状态同步按钮,处理定时任务job运行状态不一致情况
- 优化数据权限异常类型
- 优化一些抛出异常的处理
- 优化项目pom结构
- 优化前端路由跳过登录鉴权配置
- 优化请求权限校验流程
- 优化MQTT .lock文件夹问题
- 优化前端支持内部打开外部页面
- fix: 权限不拦截问题
- fix: 开启验证码后, 在登录页面提示请求报错
- fix: 在MacOS环境下运行日志存储报错问题
- fix: mqtt ClientId配置问题导致启动时连接失败的问题
- fix: RestExceptionHandler处理Throwable异常
详情查看:https://gitee.com/bootx/bootx-platform/releases/v1.1.0-bate-2
新功能截图
PlumeLog 日志管理
ELK日志管理
Websocket模块
接入多种消息中间件
不同的终端可以有不同的菜单权限列表