| | |
| | | [](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/blob/master/LICENSE) |
| | | [](https://www.jetbrains.com/?from=RuoYi-Vue-Plus) |
| | | <br> |
| | | [](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus) |
| | | [](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus) |
| | | []() |
| | | []() |
| | | []() |
| | | []() |
| | | []() |
| | | |
| | | RuoYi-Vue-Plus 是基于 RuoYi-Vue 针对 `分布式集群` 场景升级 定期与 RuoYi-Vue 同步 |
| | | RuoYi-Vue-Plus 是基于 RuoYi-Vue 针对 `分布式集群` 场景升级(不兼容原框架) |
| | | |
| | | 集成 Lock4j dynamic-datasource OSS存储 等分布式场景解决方案 |
| | | |
| | | 集成 Mybatis-Plus Lombok Hutool 等便捷开发工具 适配重写相关业务 便于开发 |
| | | |
| | | * 前端开发框架 Vue、Element UI |
| | | * 后端开发框架 Spring Boot、Redis |
| | | * 容器框架 Undertow 基于 Netty 的高性能容器 |
| | | * 权限认证框架 Spring Security、Jwt,支持多终端认证系统 |
| | | * 关系数据库 MySQL 适配 8.X |
| | | * 缓存数据库 Redis 适配 6.X |
| | | * 数据库开发框架 Mybatis-Plus 快速 CRUD 增加开发效率 插件化支持各类需求 |
| | | * 网络框架 Feign、OkHttp3 接口化管理 HTTP 请求 |
| | | * 工具类框架 Hutool、Lombok 减少代码冗余 增加安全性 |
| | | * 监控框架 spring-boot-admin 全方位服务监控 |
| | | * 校验框架 validation 增强接口安全性 严谨性 |
| | | * 文档框架 knife4j 美化接口文档 |
| | | * 序列化框架 统一使用 jackson 高效可靠 |
| | | * 代码生成器 一键生成前后端代码 |
| | | * 多数据源框架 dynamic-datasource 支持主从与多种类数据库异构 |
| | | * Redis客户端 采用 Redisson 性能更强 |
| | | * 分布式锁 Lock4j 注解锁、工具锁 多种多样 |
| | | * 部署方式 Docker 容器编排 一键部署业务集群 |
| | | * 文件存储 OSS 对象存储模块 支持(Minio、七牛、阿里、腾讯) |
| | | | 功能介绍 | 使用技术 | 文档地址 | 特性注意事项 | |
| | | |---|---|---|---| |
| | | | 当前框架 | RuoYi-Vue-Plus | [RuoYi-Vue-Plus文档](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/wikis/pages) | 重写RuoYi-Vue全方位升级(不兼容原框架) | |
| | | | satoken分支 | RuoYi-Vue-Plus-satoken | [satoken分支地址](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/tree/satoken/) | 使用satoken重构权限鉴权(仅供学习不推荐上生产) | |
| | | | 单体分支 | RuoYi-Vue-Plus-fast | [fast分支地址](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/tree/fast/) | 单体应用结构 | |
| | | | 原框架 | RuoYi-Vue | [RuoYi-Vue官网](http://ruoyi.vip/) | 定期同步需要的功能 | |
| | | | 前端开发框架 | Vue、Element UI | [Element UI官网](https://element.eleme.cn/#/zh-CN) | | |
| | | | 后端开发框架 | SpringBoot | [SpringBoot官网](https://spring.io/projects/spring-boot/#learn) | | |
| | | | 容器框架 | Undertow | [Undertow官网](https://undertow.io/) | 基于 Netty 的高性能容器 | |
| | | | 权限认证框架 | Spring Security、Jwt | [SpringSecurity官网](https://spring.io/projects/spring-security#learn) | 支持多终端认证系统 | |
| | | | 关系数据库 | MySQL | [MySQL官网](https://dev.mysql.com/) | 适配 8.X 最低 5.7 | |
| | | | 缓存数据库 | Redis | [Redis官网](https://redis.io/) | 适配 6.X 最低 4.X | |
| | | | 数据库框架 | Mybatis-Plus | [Mybatis-Plus文档](https://baomidou.com/guide/) | 快速 CRUD 增加开发效率 | |
| | | | 数据库框架 | p6spy | [p6spy官网](https://p6spy.readthedocs.io/) | 更强劲的 SQL 分析 | |
| | | | 多数据源框架 | dynamic-datasource | [dynamic-ds文档](https://www.kancloud.cn/tracy5546/dynamic-datasource/content) | 支持主从与多种类数据库异构 | |
| | | | 序列化框架 | Jackson | [Jackson官网](https://github.com/FasterXML/jackson) | 统一使用 jackson 高效可靠 | |
| | | | 网络框架 | Feign、OkHttp3 | [Feign官网](https://github.com/OpenFeign/feign) | 接口化管理 HTTP 请求 | |
| | | | Redis客户端 | Redisson | [Redisson文档](https://github.com/redisson/redisson/wiki/%E7%9B%AE%E5%BD%95) | 支持单机、集群配置 | |
| | | | 分布式限流 | Redisson | [Redisson文档](https://github.com/redisson/redisson/wiki/%E7%9B%AE%E5%BD%95) | 全局、请求IP、集群ID 多种限流 | |
| | | | 分布式锁 | Lock4j | [Lock4j官网](https://gitee.com/baomidou/lock4j) | 注解锁、工具锁 多种多样 | |
| | | | 分布式幂等 | Lock4j | [Lock4j文档](https://gitee.com/baomidou/lock4j) | 基于分布式锁实现 | |
| | | | 文件存储 | Minio | [Minio文档](https://docs.min.io/) | 本地存储 | |
| | | | 文件存储 | 七牛、阿里、腾讯 | [OSS使用文档](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/wikis/pages?sort_id=4359146&doc_id=1469725) | 云存储 | |
| | | | 监控框架 | SpringBoot-Admin | [SpringBoot-Admin文档](https://codecentric.github.io/spring-boot-admin/current/) | 全方位服务监控 | |
| | | | 校验框架 | Validation | [Validation文档](https://docs.jboss.org/hibernate/stable/validator/reference/en-US/html_single/) | 增强接口安全性、严谨性 | |
| | | | Excel框架 | Alibaba EasyExcel | [EasyExcel文档](https://www.yuque.com/easyexcel/doc/easyexcel) | 性能优异 扩展性强 | |
| | | | 文档框架 | Knife4j | [Knife4j文档](https://doc.xiaominfo.com/knife4j/documentation/) | 美化接口文档 | |
| | | | 工具类框架 | Hutool、Lombok | [Hutool文档](https://www.hutool.cn/docs/) | 减少代码冗余 增加安全性 | |
| | | | 代码生成器 | 适配MP、Knife4j规范化代码 | [Hutool文档](https://www.hutool.cn/docs/) | 一键生成前后端代码 | |
| | | | 部署方式 | Docker | [Docker文档](https://docs.docker.com/) | 容器编排 一键部署业务集群 | |
| | | | 国际化 | SpringMessage | [SpringMVC文档](https://docs.spring.io/spring-framework/docs/current/reference/html/web.html#mvc) | Spring标准国际化方案 | |
| | | |
| | | ## 参考文档 |
| | | |
| | |
| | | |
| | | 欢迎各路英雄豪杰 `PR` 代码 请提交到 `dev` 开发分支 统一测试发版 |
| | | |
| | | 框架定位为 `通用后台管理系统(分布式集群强化)` 原则上不接受业务 `PR` |
| | | |
| | | ## 修改RuoYi功能 |
| | | ### 依赖改动 |
| | | |
| | | * ORM框架 使用 Mybatis-Plus 简化CRUD (不支持主子表) |
| | | * Bean简化 使用 Lombok 简化 get set toString 等等 |
| | | * 容器改动 Tomcat 改为 并发性能更好的 undertow |
| | | * 分页移除 pagehelper 改为 Mybatis-Plus 分页 |
| | | * 升级 swagger 为 knife4j |
| | | * 集成 Hutool 5.X 并重写RuoYi部分功能 |
| | | * 集成 Feign 接口化管理 Http 请求(如三方请求 支付,短信,推送等) |
| | | * 移除 自带服务监控 改为 spring-boot-admin 全方位监控 |
| | | * 增加 demo 模块示例(给不会增加模块的小伙伴做参考) |
| | | * 增加 redisson 高性能 Redis 客户端 |
| | | * 移除 fastjson 统一使用 jackson 序列化 |
| | | * 集成 dynamic-datasource 多数据源(默认支持MySQL,其他种类需自行适配) |
| | | * 集成 Lock4j 实现分布式 注解锁、工具锁 多种多样 |
| | | * 增加 Docker 容器编排 打包插件与部署脚本 |
| | | * 移除 本地文件上传 改为 OSS对象存储 支持(Minio、七牛、阿里、腾讯) |
| | | |
| | | ### 代码改动 |
| | | |
| | | * 所有原生功能使用 Mybatis-Plus 与 Lombok 重写 |
| | | * 增加 IServicePlus 与 BaseMapperPlus 可自定义通用方法 |
| | | * 代码生成模板 改为适配 Mybatis-Plus 的代码 |
| | | * 代码生成模板 根据 Alibaba 代码规约 拆分出 VO、BO 等领域对象 |
| | | * 代码生成模板 增加 文档注解 与 校验注解 简化通用操作 |
| | | * 项目修改为 maven多环境配置 |
| | | * 项目配置修改为 application.yml 统一管理 |
| | | * 数据权限修改为 适配支持单表、多表 |
| | | * 使用 redisson 实现 spring-cache 整合 |
| | | * 增加 mybatis-plus 二级缓存 redis 存储 |
| | | 框架定位为 `通用后台管理系统(分布式集群强化)` 原则上不接受业务 `PR` |
| | | |
| | | ### 其他 |
| | | |
| | | * 同步升级 RuoYi-Vue |
| | | * GitHub 地址 [RuoYi-Vue-Plus-github](https://github.com/JavaLionLi/RuoYi-Vue-Plus) |
| | | * 单模块 fast 分支 [RuoYi-Vue-Plus-fast](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/tree/fast/) |
| | | * Oracle 模块 oracle 分支 [RuoYi-Vue-Plus-oracle](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/tree/oracle/) |
| | | * satoken 分支 [RuoYi-Vue-Plus-satoken](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/tree/satoken/) |
| | | * 用户扩展项目 [扩展项目列表](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/wikis/pages?sort_id=4478302&doc_id=1469725) |
| | | |
| | | ## 扫码加群 一起交流 |
| | |  |
| | | ## 加群与捐献 |
| | | >[加群与捐献](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/wikis/加群与捐献?sort_id=4104598) |
| | | >>[https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/wikis/加群与捐献?sort_id=4104598](https://gitee.com/JavaLionLi/RuoYi-Vue-Plus/wikis/加群与捐献?sort_id=4104598) |
| | | |
| | | ## 捐献作者 |
| | | 作者为兼职做开源,平时还需要工作,如果帮到了您可以请作者吃个盒饭 |
| | | <img src="https://images.gitee.com/uploads/images/2021/0525/101654_451e4523_1766278.jpeg" width="300px" height="450px" /> |
| | | <img src="https://images.gitee.com/uploads/images/2021/0525/101713_3d18b119_1766278.jpeg" width="300px" height="450px" /> |
| | | |
| | | ## 内置功能 |
| | | ## 业务功能 |
| | | |
| | | 1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。 |
| | | 2. 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。 |
| | | 3. 岗位管理:配置系统用户所属担任职务。 |
| | | 4. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。 |
| | | 5. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。 |
| | | 6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护。 |
| | | 7. 参数管理:对系统动态配置常用参数。 |
| | | 8. 通知公告:系统通知公告信息发布维护。 |
| | | 9. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。 |
| | | 10. 登录日志:系统登录日志记录查询包含登录异常。 |
| | | 11. 在线用户:当前系统中活跃用户状态监控。 |
| | | 12. 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。 |
| | | 13. 代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。 |
| | | 14. 系统接口:根据业务代码自动生成相关的api接口文档。 |
| | | 15. 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。 |
| | | 16. 缓存监控:对系统的缓存信息查询,命令统计等。 |
| | | 17. 在线构建器:拖动表单元素生成相应的HTML代码。 |
| | | 18. 连接池监视:监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。 |
| | | | 功能 | 介绍 | |
| | | |---|---| |
| | | | 用户管理 | 用户是系统操作者,该功能主要完成系统用户配置。 | |
| | | | 部门管理 | 配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。 | |
| | | | 岗位管理 | 配置系统用户所属担任职务。 | |
| | | | 菜单管理 | 配置系统菜单,操作权限,按钮权限标识等。 | |
| | | | 角色管理 | 角色菜单权限分配、设置角色按机构进行数据范围权限划分。 | |
| | | | 字典管理 | 对系统中经常使用的一些较为固定的数据进行维护。 | |
| | | | 参数管理 | 对系统动态配置常用参数。 | |
| | | | 通知公告 | 系统通知公告信息发布维护。 | |
| | | | 操作日志 | 系统正常操作日志记录和查询;系统异常信息日志记录和查询。 | |
| | | | 登录日志 | 系统登录日志记录查询包含登录异常。 | |
| | | | 文件管理 | 系统文件上传、下载等管理。 | |
| | | | 定时任务 | 在线(添加、修改、删除)任务调度包含执行结果日志。 | |
| | | | 代码生成 | 前后端代码的生成(java、html、xml、sql)支持CRUD下载 。 | |
| | | | 系统接口 | 根据业务代码自动生成相关的api接口文档。 | |
| | | | 服务监控 | 监视集群系统CPU、内存、磁盘、堆栈、在线日志、Spring相关配置等。 | |
| | | | 缓存监控 | 对系统的缓存信息查询,命令统计等。 | |
| | | | 在线构建器 | 拖动表单元素生成相应的HTML代码。 | |
| | | | 连接池监视 | 监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。 | |
| | | | 使用案例 | 系统的一些功能案例 | |
| | | |
| | | ## 演示图例 |
| | | |
| | |
| | | </tr> |
| | | </tbody> |
| | | </table> |
| | | |
| | | ## 在线体验 |
| | | |
| | | - admin/admin123 |
| | | - 陆陆续续收到一些打赏,为了更好的体验已用于演示服务器升级。谢谢各位小伙伴。 |
| | | |
| | | 演示地址:http://vue.ruoyi.vip |
| | | 文档地址:http://doc.ruoyi.vip |