RuoYi-Cloud-Plus 2.4.0 版本深度解析:企业级微服务架构的全面升级
RuoYi-Cloud-Plus 是基于 Spring Cloud Alibaba 的企业级微服务快速开发平台,它整合了当前主流的技术栈,为开发者提供了一套开箱即用的解决方案。本次发布的 2.4.0 版本(代号"🐳🐳🐳")带来了多项重要更新和优化,涵盖了基础架构、工作流引擎、安全认证等多个关键领域。
核心架构升级
在基础架构层面,2.4.0 版本进行了多项重要升级。首先是将 springboot 从 3.4.4 升级到 3.4.6 版本,这一升级带来了性能提升和安全性增强。同时,mybatis-plus 也升级到了 3.5.12 版本,优化了 ORM 层的操作效率。
特别值得注意的是对 sa-token 认证框架的升级,从 1.40.0 升级到 1.42.0 版本。这一升级涉及多个重要变更:
- SaLoginModel 重命名为 SaLoginParameter
- device 属性改为 deviceType
- BCrypt 加密工具切换为 hutool 的实现
- SaTokenDao 重构为 SaTokenDaoBySessionFollowObject
- SSE(Server-Sent Events)适配了新版本的拦截器变化
这些变更虽然带来了兼容性挑战,但也为系统提供了更强大的安全特性和更灵活的认证机制。开发者需要注意调整相关代码以适应这些变化。
工作流引擎优化
工作流模块是本版本的重点优化领域之一。warm-flow 从 1.6.8 升级到 1.7.2 版本,带来了多项改进:
-
流程监听机制增强:新增了全局分派监听器和完成监听器,统一处理节点指定办理人、角色和部门转具体用户、抄送人和消息推送等逻辑,使流程处理更加规范。
-
流程可视化:前端使用 logicflow 实现了流程预览功能,大大提升了流程设计的直观性和易用性。
-
审批简化API:新增了工作流API审批简化方法,降低了开发者的使用门槛。
-
会签功能修复:解决了会签审批中每个任务的审批人都是选择的多人问题,确保了会签流程的正确执行。
-
流程变量处理:优化了工作流获取流程变量的方式,采用建造者模式重构了FlowParams,提升了代码可读性和维护性。
分布式任务调度增强
snailjob 从 1.4.0 升级到 1.5.0 版本,并新增了大量demo案例,帮助开发者更好地理解和使用分布式任务调度功能。同时修复了HTTP Basic验证判断错误问题,并优化了Dockerfile构建文件,新增暴露snail job客户端端口用于定时任务调度中心通信。
数据持久层改进
数据持久层方面,Mybatis-Plus升级到3.5.12版本,并优化了Mybatis异常处理器。新增了假分页方法,优化了查询性能。同时,实体类统一使用包装类型,避免了基本类型可能带来的NPE问题。
Excel处理方面,升级了EasyExcel原作者FastExcel到1.2.0版本,修复了多个Excel导出问题:
- 合并单元格在最后一行无法合并时数据合并失效问题
- 多字段下拉值超过100个异常问题(采用多sheet方案解决)
前端架构升级
前端技术栈全面升级:
- element-plus 升级到 2.9.8
- pinia 升级到 3.0.2
- vue-router 升级到 4.5.0
- typescript 升级到 5.8.3
- vite 升级到 6.3.2
这些升级带来了更好的性能、更强的类型安全和更优的开发体验。同时,前端新增了工作流流程预览功能,使用logicflow实现流程可视化;优化了动态路由管理,将其迁移到菜单管理中;封装了审批按钮公共组件,提高了代码复用率。
安全认证增强
安全认证方面,除了sa-token的升级外,还进行了多项优化:
- 权限获取逻辑增强,支持用户登录但查询其他loginId的场景
- 在线用户设置过期时间与客户端同步问题修复
- 直接从ClassPath加载ip2region数据库文件,提高了IP定位的可靠性
- 支持IPv6地址判断,避免了抛异常的情况
多租户与微服务优化
多租户支持方面,修复了新建租户未复制工作流相关数据的问题,优化了多租户忽略表判断,支持忽略大小写。微服务通信方面,临时处理了sa-token对dubbo内部调用的情况考虑不周导致无法获取上下文的bug,修复了dubbo redis元数据中心报错找不到元数据问题。
开发者体验提升
2.4.0版本在开发者体验方面做了大量工作:
- 代码生成ServiceImpl层增加日志注解
- 新增发号器工具类方法
- 新增自定义字典值校验器
- 新增自定义Date类型反序列化处理器(支持多种格式)
- 新增请求体读取异常处理
- 使用record简化vo代码
- 缓存注解支持关闭本地缓存
这些改进使得开发更加便捷,代码更加简洁,异常处理更加完善。
容器化支持增强
Docker相关支持也有显著提升:
- Docker-compose编排增加snailjob端口防止集群冲突
- 建议MySQL镜像升级到8.0.42
- 建议Redis镜像升级到7.2.8
- 建议MinIO镜像升级到RELEASE.2025-05-24T17-08-30Z
这些更新确保了容器化部署的稳定性和安全性。
总结
RuoYi-Cloud-Plus 2.4.0版本是一次全面的升级,在性能、安全性、易用性和功能性方面都有显著提升。特别是工作流引擎的优化、安全认证的增强和开发者体验的改善,使得这个企业级微服务快速开发平台更加成熟和强大。对于正在使用或考虑采用RuoYi-Cloud-Plus的企业和开发者来说,升级到2.4.0版本将获得更好的开发体验和更稳定的运行表现。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考