一飞开源-开源推荐,致力于将开源项目技术应用第一时间推送给目标用户,降低开源作者、开源团队、开源组织的开源项目运营推广难度及成本,让开源项目精准畅通传递触达至目标群体,传递价值、分享共赢!
一、开源项目简介
MyBatis-Flex:一个优雅的 MyBatis 增强框架
MyBatis-Flex 是一个优雅的 MyBatis 增强框架,它非常轻量、同时拥有极高的性能与灵活性。我们可以轻松的使用 Mybaits-Flex 链接任何数据库,其内置的 QueryWrapper^亮点 帮助我们极大的减少了 SQL 编写的工作的同时,减少出错的可能性。
总而言之,MyBatis-Flex 能够极大地提高我们的开发效率和开发体验,让我们有更多的时间专注于自己的事情。
二、开源协议
使用Apache-2.0开源协议
三、界面展示
四、功能概述
特征
1、很轻量
MyBatis-Flex 整个框架只依赖 MyBatis,再无其他任何第三方依赖。
2、只增强
MyBatis-Flex 支持 CRUD、分页查询、多表查询、批量操作,但不丢失 MyBatis 原有的任何功能。
3、高性能
MyBatis-Flex 采用独特的技术架构、相比同类框架(比如 MyBatis-Plus),MyBatis-Flex 的在增删改查等方面的性能均超越其 5~10 倍或以上。
4、更灵动
MyBatis-Flex 支持多主键、多表查询、逻辑删除、乐观锁、数据脱敏、数据加密、多数据源、分库分表、字段权限、 字段加密、多租户、事务管理、SQL 审计... 等等等等。这一切,免费且灵动。
五、技术选型
快速开始
在开始之前,我们假定您已经:
- 熟悉 Java 环境配置及其开发
- 熟悉 关系型 数据库,比如 MySQL
- 熟悉 Spring Boot 及相关框架
- 熟悉 Java 构建工具,比如 Maven
详细内容,请查看 README.md 文档。
MyBatis-Flex 和同类框架「功能」对比
MyBatis-Flex 主要是和 MyBatis-Plus 与 Fluent-MyBatis 对比,内容来源其官网、git 或者 网络文章,若有错误欢迎纠正。
- MyBatis-Plus:老牌的 MyBatis 增强框架,开源于 2016 年。
- Fluent-MyBatis:阿里云开发的 MyBatis 增强框架(来自于阿里云·云效产品团队)
功能对比
功能或特点
MyBatis-Flex
MyBatis-Plus
Fluent-MyBatis
对 entity 的基本增删改查
✅
✅
✅
分页查询
✅
✅
✅
分页查询之总量缓存
✅
✅
❌
分页查询无 SQL 解析设计(更轻量,及更高性能)
✅
❌
✅
多表查询:from 多张表
✅
❌
❌
多表查询:left join、inner join 等等
✅
❌
✅
多表查询:union,union all
✅
❌
✅
单主键配置
✅
✅
✅
多种 id 生成策略
✅
✅
✅
支持多主键、复合主键
✅
❌
❌
字段的 typeHandler 配置
✅
✅
✅
除了 MyBatis,无其他第三方依赖(更轻量)
✅
❌
❌
QueryWrapper 是否支持在微服务项目下进行 RPC 传输
✅
❌
未知
逻辑删除
✅
✅
✅
乐观锁
✅
✅
✅
SQL 审计
✅
❌
❌
数据填充
✅
✔️ (收费)
✅
数据脱敏
✅
✔️ (收费)
❌
字段权限
✅
✔️ (收费)
❌
字段加密
✅
✔️ (收费)
❌
字典回写
✅
✔️ (收费)
❌
Db + Row
✅
❌
❌
Entity 监听
✅
❌
❌
多数据源支持
✅
借助其他框架或收费
❌
多数据源是否支持 Spring 的事务管理,比如 @Transactional 和 TransactionTemplate 等
✅
❌
❌
多数据源是否支持 "非Spring" 项目
✅
❌
❌
多租户
✅
✅
❌
动态表名
✅
✅
❌
动态 Schema
✅
❌
❌
以上内容来自第三方相关产品的官方文档或第三方平台,若有错误,欢迎纠正。
浏览器
html
无
未经允许不得转载: ICode联盟 » 项目源码 » [开源]优雅的MyBatis增强框架,很轻量、只增强、高性能、更灵动