MyBatis-Plus
基于 MyBatis 的增强工具,引入现有工程后原有 Mapper 与 SQL 照常工作,单表 CRUD、分页、逻辑删除和代码生成均可直接调用,适合已在用 MyBatis、不想为常规单表操作反复写 SQL 的 Java 后端团队。
MyBatis-Plus 是建立在 MyBatis 之上的增强工具,定位是「只做增强不做改变」:把它引入现有工程,原来的 Mapper 和 SQL 照常工作,不需要改写已有代码。它要解决的是 MyBatis 里那些重复劳动——每张表都要手写增删改查、分页要自己拼 SQL、逻辑删除要在每条语句里加条件。
主要功能
配置好实体和 Mapper 之后,单表 CRUD 基本不用写 SQL,方法直接调用。分页、逻辑删除、字段自动填充、拦截器这些常见需求都内置了,代码生成器可以按表结构生成实体、Mapper 和 Service。项目以 Maven 依赖方式引入,页面给出的最新版本是 3.5.18,Gradle 写法同样列出。
生态与周边
围绕它有一圈「苞米豆生态圈」组件:IDEA 插件 MybatisX 支持跳转、SQL 补全和代码生成;Mybatis-Mate 面向企业级场景,提供分库分表、数据审计、字段加密、数据权限等模块;此外还有多数据源组件 Dynamic-Datasource、分布式锁 Lock4j、工作流引擎 FlowLong 等,按需选用。
适合谁
已经在用 MyBatis、又不想为常规单表操作反复写 SQL 的 Java 后端团队。如果项目里复杂多表查询占大头,它的增强主要省在单表这一层,复杂 SQL 仍要自己写。文档有简体中文、English、日本語三种语言,代码托管在 Gitee 和 GitHub,教程和案例集中在 Awesome-MyBatis-Plus 里。
费用与限制
框架本身开源免费,通过 Maven 中央仓库获取,不需要注册账号。页面提到它连续 5 年(2017—2021)获得 OSC 年度最受欢迎中国开源软件,GitHub 累计 16K Star。站点页面带有赞助商广告,并提示将网站加入广告拦截器白名单。