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.7.5~v.17.6 更新细节如下:
- 新增:Db.selectFirstAndSecondColumnsAsMap 方法:查询结果的第一列作为 key,第二列作为 value,感谢 @tangxin
- 新增:方言添加添加权限处理统一入口 prepareAuth,感谢 @bf109f
- 优化:在数组异常时不显示数组为空异常信息的问题,感谢 @王帅
- 优化:修改 QueryCondition 的类的相关错别字,感谢 @王帅
- 优化:升级 MyBatis 相关依赖到最新版本,感谢 @lcxw
- 修复:DB2 v10.5 不支持 offset 关键字进行分页的问题,感谢 @farukonfly
- 修复:DB2 v10.5 不支持 Nulls First 或 Nulls Last 语法的问题,感谢 @farukonfly
- 修复:FieldWrapper 对有泛型 Entity 进行部分更新时报错的问题,感谢 @tangxin
- 修复:Db.updateEntitiesBatch 更新部分字段时,在某些场景下报错的问题,感谢 @tangxin
- 修复:字段类型为 YearMonth,Year 等时更新出错的问题 #I8CGVM:[Bug]: 不支持YearMonth,Year等
- 修复:main 方法直接调用 updateChain 方法构建 sql 时调用 toSQL 出错的问题 #I8NF9T:[Bug]: main方法直接调用updateChain方法构建一条sql语句后无法调用toSQL方法显示SQL语句
- 修复:主键 ID 当传入空字符串时,调用
insert
方法不会依据@Id
自动生成主键 id 的问题 - 修复:
FlexTransactionManager
在某些情况下空指针异常的问题 - 修复:
@ColumnMask
,typeHandler
一起使用时冲突导致@ColumnMask
不生效的问题 - 测试:优化单元测试,移除 println,添加更多的断言,感谢 @mofangogogo
- 文档:添加 SpringBoot 3.2 版本启动失败解决办法,感谢 @王帅
- 文档:优化英文文档的相关内容,感谢 @mofangogogo
代码贡献者,请参考:https://mybatis-flex.com/zh/intro/what-is-mybatisflex.html#%E8%B4%A1%E7%8C%AE%E8%80%85
进一步了解 MyBatis-Flex 框架,请参考一下链接:
- 1、快速开始:https://mybatis-flex.com/zh/intro/getting-started.html
- 2、多表关联查询:https://mybatis-flex.com/zh/base/query.html
- 3、一对多、多对一:https://mybatis-flex.com/zh/base/relations-query.html
- 4、灵活的 QueryWrapper:https://mybatis-flex.com/zh/base/querywrapper.html
- 5、逻辑删除:https://mybatis-flex.com/zh/core/logic-delete.html
- 6、乐观锁:https://mybatis-flex.com/zh/core/version.html
- 7、数据填充:https://mybatis-flex.com/zh/core/fill.html
- 6、数据脱敏:https://mybatis-flex.com/zh/core/mask.html
- 7、SQL 审计:https://mybatis-flex.com/zh/core/audit.html
- 8、多数据源:https://mybatis-flex.com/zh/core/multi-datasource.htm
- 9、数据源加密:https://mybatis-flex.com/zh/core/datasource-encryption.html
- 10、动态表名:https://mybatis-flex.com/zh/core/dynamic-table.html
- 11、事务管理:https://mybatis-flex.com/zh/core/tx.html
- 12、数据权限:https://mybatis-flex.com/zh/core/data-permission.html
- 13、字段权限:https://mybatis-flex.com/zh/core/columns-permission.html
- 14、字段加密:https://mybatis-flex.com/zh/core/columns-encrypt.html
- 15、字典回写:https://mybatis-flex.com/zh/core/columns-dict.html
- 16、枚举属性:https://mybatis-flex.com/zh/core/enum-property.html
- 17、多租户:https://mybatis-flex.com/zh/core/multi-tenancy.html
- 18、代码生成器:https://mybatis-flex.com/zh/others/codegen.html
- 19、QQ 交流群:https://mybatis-flex.com/zh/intro/qq-group.html
- 20、更好用的功能正在路上:https://mybatis-flex.com
bilibili 视频教程(免费):
课程 :《MyBatis-Flex 视频教程》
课程简介:该课程由 王帅 老师录制主讲, 王帅 老师也是除了作者以外,对 MyBatis-Flex 代码贡献最大的 committer。 其无论对 MyBatis 还是 MyBatis-Flex,都有非常深入的理解。
课程地址:
https://www.bilibili.com/video/BV11h411A7cU
还没有评论,来说两句吧...