![]()
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.2 中,受诸多用户的要求下,我们新增了对 MyBatis-Plus 的 QueryWrapper 兼容 API,方便喜欢 MyBatis-Flex 的用户从 MyBatis-Plus 迁移到 MyBatis-Flex。
以下是一些兼容 API 的示例:
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.from("tb_account")
.eq("column1", "value1")
.ge(Account::getAge, 18)
.or(wrapper -> {
wrapper.eq("column2", "value2")
.ge(Account::getSex, 0);
});
System.out.println(queryWrapper.toSQL());
其生成的 SQL 如下:
SELECT * FROM `tb_account`
WHERE column1 = 'value1' AND `age` >= 18
OR (column2 = 'value2' AND `sex` >= 0)
虽然 MyBatis-Flex 尽量兼容 MyBatis-Plus 的 API,但细节也有所不同,更多参考:https://mybatis-flex.com/zh/base/querywrapper.html#mybatis-plus-%E5%85%BC%E5%AE%B9-api
MyBatis-Flex v1.7.2 更新细节如下:
进一步了解 MyBatis-Flex 框架,请参考一下链接:
bilibili 视频教程(免费):
课程 1:《MyBatis-Flex 视频教程》
课程简介:该课程由 王帅 老师录制主讲, 王帅 老师也是除了作者以外,对 MyBatis-Flex 代码贡献最大的 committer。 其无论对 MyBatis 还是 MyBatis-Flex,都有非常深入的理解。
课程地址:
https://www.bilibili.com/video/BV11h411A7cU
课程 2:《MyBatis-Flex 轻松掌握,从零基础到高级应用的完整教程!持续更新中~》
课程简介:该课程由周游老师录制,周游老师有多年的开发经验以及丰富的教学经验,能够把 MyBatis-Flex 的许多原理知识讲解的通俗易懂、深入浅出。
课程地址:
https://www.bilibili.com/video/BV1kF411r7ky
另外,MyBatis-Flex 团队的另外开源两个 React 高级组件,用到的同学也可以关注下:
- Antd-bpmn:一个基于 React + Ant.design + bpmn.js 编写的工作流高阶组件,开源网址:https://gitee.com/antdadmin/antd-bpmn
- Antd-crud:一个优质的 React 【增删改查】高阶组件,基于 Ant.Design。开源网址:https://gitee.com/antdadmin/antd-crud