![]()
MyBatis-Flex: 一个优雅的 MyBatis 增强框架
特征
1、很轻量
MyBatis-Flex 整个框架只依赖 MyBatis,再无其他任何第三方依赖。
2、只增强
MyBatis-Flex 支持 CRUD、分页查询、多表查询、批量操作,但不丢失 MyBatis 原有的任何功能。
3、高性能
MyBatis-Flex 采用独特的技术架构、相比许多同类框架,MyBatis-Flex 的在增删改查等方面的性能均超越其 5~10 倍或以上。
4、更灵动
MyBatis-Flex 支持多主键、多表查询、逻辑删除、乐观锁、数据脱敏、数据加密、多数据源、分库分表、字段权限、 字段加密、多租户、事务管理、SQL 审计... 等等等等。 这一切,免费且灵动。
在 MyBatis-Flex v1.5.4 中,主要由 13 为同学,提供了不同的 PR 完善 MyBatis-Flex 细节,这些同学中,有的是学生,也有的就职于大家耳熟能详的大厂,感谢每一位同学的付出。
MyBatis-Flex v1.5.4 更新如下:
- 新增:UpdateChain.of(entity) 方法,方便直接传入 entity
- 新增:TableInfo.buildQueryColumn() 方法,用于在泛型下构建 QueryColumn
- 新增:添加新的 Db.executeBatch() 方法,方便直接传入集合进行批量操作
- 新增:QueryWrapper 添加 where(consumer) 方法
- 新增:多数据源功能添加负载均衡的能力
- 新增:QueryWrapper 的.and() .or() 方法, 增加一个 condition 参数的方法,感谢 @Jerry_Zheng
- 新增:添加 BaseMapper.selectOneWithRelationsByIdAs() 方法,感谢 @Jerry
- 新增:添加异常信息国际哈的支持,感谢 @王帅
- 新增:添加主键逻辑删除处理器的支持,感谢 @王帅
- 新增:在 Service 中可以直接获取链式更新 UpdateChain 方法,感谢 @王帅
- 新增:ActiveRecord 添加 join 查询和 Relations 查询的功能,感谢 @王帅
- 新增:代码生成器添加对 ActiveRecord 生成的支持,感谢 @王帅
- 优化:修改 getPropertySimpleType 方法实现, 防止出现找不到类的问题,感谢 @pengpeng
- 优化:重构将 assertAreNotNull 从 FlexExceptions 移动到 FlexAssert 中,感谢 @王帅
- 优化:重构 ActiveRecord 的一些方法,避免被 JSON 框架解析,感谢 @王帅
- 优化:标记
BaseMapper.updateNumberAddByQuery() 为删除,在未来 v1.6.0 将会从项目里删除
- 优化:Maven 的 "artifact xxx has been relocated" 警告的问题,感谢 @sppan24
- 优化:优化主键逻辑删除处理器逻辑,感谢 @王帅
- 修复:代码生成器多次调用是出错的问题,感谢 @王帅
- 修复:TableInfo 相关处理时无法获取 defaultConfig 的问题,感谢 @西东 @lhzsdnu
- 修复:代码生成器中的 mapper xml 默认生成路径错误的问题,感谢 @王帅
- 修复:逻辑删除在设置字符串时,多添加了单引号的问题,感谢 @王帅
- 修复:多数据源注解嵌套使用时,可能某些配置不生效的问题,感谢 @barql
- 文档:修复字段脱敏中的一些错别字的问题,感谢 @winnerself
- 文档:添加关于多数据源负载均衡的相关文档
- 文档:修复 Db + Row 的一些代码示例错误的问题,感谢 @ζั͡ ั͡ ั͡ ั͡Wm
- 文档:修复链式操作相关的一些错别字的问题,感谢 @luy
- 文档:修复 apt 的一些描述错误的问题,感谢 @时间淡忘一切
- 文档:添加关于 ActiveRecord 关联查询的相关文档,感谢 @王帅
- 文档:更新内置逻辑删除处理器文档,感谢 @王帅
- 文档:修改 Query 查询的代码示例中的 Page 定义错误的问题,感谢 @EafonYoung
进一步了解 MyBatis-Flex 框架,请参考一下链接:
MyBatis-Flex-Helper 开发插件:
这是一款高度自定义的 Mybatis-Flex IDEA 代码生成插件:
bilibili 视频教程: