MCPcopy Index your code
hub / github.com/baomidou/mybatis-plus

github.com/baomidou/mybatis-plus @v3.5.16

Chat with this repo
repository ↗ · DeepWiki ↗ · release v3.5.16 ↗ · + Follow
5,424 symbols 20,142 edges 926 files 2,073 documented · 38% 2 cross-repo links updated todayv3.5.16 · 2026-01-11★ 17,40411 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Mybatis-Plus-Logo

为简化开发工作、提高生产率而生

code style

code style

code style

maven

code style

企业版 Mybatis-Mate 高级特性

简介 | Intro

Mybatis 增强工具包 - 只做增强不做改变,简化CRUD操作

添加 微信 wx153666 备注进 mp 群

不允许非法项目使用,后果自负

特别用户

aizuda-Logo mall4j-Logo crmeb-Logo

依赖引用

  • Latest Version: Maven Central
    • Maven:
    • SpringBoot2 xml <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>Latest Version</version> </dependency>
    • SpringBoot3 xml <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-spring-boot3-starter</artifactId> <version>Latest Version</version> </dependency>
    • SpringBoot4 ^3.5.13 xml <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-spring-boot4-starter</artifactId> <version>Latest Version</version> </dependency>
    • ^3.5.9 你可能需要额外的引用
      • jdk11+ xml <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-jsqlparser</artifactId> <version>Latest Version</version> </dependency>
      • jdk8 xml <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-jsqlparser-4.9</artifactId> <version>Latest Version</version> </dependency>
      • Gradle
      • SpringBoot2 groovy compile group: 'com.baomidou', name: 'mybatis-plus-boot-starter', version: 'Latest Version'
      • SpringBoot3 groovy compile group: 'com.baomidou', name: 'mybatis-plus-spring-boot3-starter', version: 'Latest Version'

优点 | Advantages

  • 无侵入:Mybatis-Plus 在 Mybatis 的基础上进行扩展,只做增强不做改变,引入 Mybatis-Plus 不会对您现有的 Mybatis 构架产生任何影响,而且 MP 支持所有 Mybatis 原生的特性
  • 依赖少:仅仅依赖 Mybatis 以及 Mybatis-Spring
  • 损耗小:启动即会自动注入基本CURD,性能基本无损耗,直接面向对象操作
  • 通用CRUD操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求
  • 多种主键策略:支持多达4种主键策略(内含分布式唯一ID生成器),可自由配置,完美解决主键问题
  • 支持ActiveRecord:支持 ActiveRecord 形式调用,实体类只需继承 Model 类即可实现基本 CRUD 操作
  • 支持代码生成:采用代码或者 Maven 插件可快速生成 Mapper 、 Model 、 Service 、 Controller 层代码,支持模板引擎,更有超多自定义配置等您来使用(P.S. 比 Mybatis 官方的 Generator 更加强大!)
  • 支持自定义全局通用操作:支持全局通用方法注入( Write once, use anywhere )
  • 内置分页插件:基于Mybatis物理分页,开发者无需关心具体操作,配置好插件之后,写分页等同于写基本List查询
  • 内置性能分析插件:可输出Sql语句以及其执行时间,建议开发测试时启用该功能,能有效解决慢查询
  • 内置全局拦截插件:提供全表 delete 、 update 操作智能分析阻断,预防误操作

相关链接 | Links

其他开源项目 | Other Project

王者荣耀

MPTrophy GitCode

期望 | Futures

欢迎提出更好的意见,帮助完善 Mybatis-Plus

版权 | License

Apache License 2.0

捐赠 mybatis-plus

关注我 | About Me

  • Github: https://github.com/baomidou/mybatis-plus
  • Gitee: https://gitee.com/baomidou/mybatis-plus
  • GitCode: https://gitcode.com/baomidou/mybatis-plus 程序员日记

Extension points exported contracts — how you extend this code

ISqlSegment (Interface)
SQL 片段接口 @author hubin miemie HCL @since 2018-05-28 [13 implementers]
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/ISqlSegment.java
BMapper (Interface)
@author miemie @since 2022-05-11 [76 implementers]
mybatis-plus/src/test/java/com/baomidou/mybatisplus/test/puginsome/BMapper.java
DdlScriptErrorHandler (Interface)
错误处理器 @author nieqiurong @since 3.5.11 [7 implementers]
mybatis-plus-extension/src/main/java/com/baomidou/mybatisplus/extension/ddl/DdlScriptErrorHandler.java
ITableFieldAnnotationHandler (Interface)
字段注解处理器 @author nieqiurong @since 3.5.10 [6 implementers]
mybatis-plus-generator/src/main/java/com/baomidou/mybatisplus/generator/ITableFieldAnnotationHandler.java
MultiDataPermissionHandler (Interface)
支持多表的数据权限处理器 @author houkunlin @since 3.5.2 + [8 implementers]
mybatis-plus-jsqlparser-support/mybatis-plus-jsqlparser-5.0/src/main/java/com/baomidou/mybatisplus/extension/plugins/handler/MultiDataPermissionHandler.java
MultiDataPermissionHandler (Interface)
支持多表的数据权限处理器 @author houkunlin @since 3.5.2 + [8 implementers]
mybatis-plus-jsqlparser-support/mybatis-plus-jsqlparser-4.9/src/main/java/com/baomidou/mybatisplus/extension/plugins/handler/MultiDataPermissionHandler.java
MultiDataPermissionHandler (Interface)
支持多表的数据权限处理器 @author houkunlin @since 3.5.2 + [8 implementers]
mybatis-plus-jsqlparser-support/mybatis-plus-jsqlparser/src/main/java/com/baomidou/mybatisplus/extension/plugins/handler/MultiDataPermissionHandler.java
IEnum (Interface)
自定义枚举接口 @author hubin @since 3.4.0 [3 implementers]
mybatis-plus-annotation/src/main/java/com/baomidou/mybatisplus/annotation/IEnum.java

Core symbols most depended-on inside this repo

getName
called by 307
mybatis-plus-generator/src/main/java/com/baomidou/mybatisplus/generator/IFill.java
add
called by 281
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/segments/MergeSegments.java
changeTable
called by 278
mybatis-plus-extension/src/main/java/com/baomidou/mybatisplus/extension/plugins/inner/DynamicTableNameInnerInterceptor.java
put
called by 277
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/MybatisConfiguration.java
contains
called by 260
mybatis-plus-generator/src/main/java/com/baomidou/mybatisplus/generator/config/converts/TypeConverts.java
build
called by 241
mybatis-plus-generator/src/main/java/com/baomidou/mybatisplus/generator/config/IConfigBuilder.java
put
called by 178
mybatis-plus-jsqlparser-support/mybatis-plus-jsqlparser-5.0/src/main/java/com/baomidou/mybatisplus/extension/parser/cache/AbstractCaffeineJsqlParseCache.java
put
called by 178
mybatis-plus-jsqlparser-support/mybatis-plus-jsqlparser-4.9/src/main/java/com/baomidou/mybatisplus/extension/parser/cache/AbstractCaffeineJsqlParseCache.java

Shape

Method 4,361
Class 846
Interface 190
Enum 27

Languages

Java100%

Modules by API surface

mybatis-plus-jsqlparser-support/mybatis-plus-jsqlparser/src/test/java/com/baomidou/mybatisplus/test/extension/plugins/inner/DynamicTableNameJsqlParserInnerInterceptorTest.java77 symbols
mybatis-plus-jsqlparser-support/mybatis-plus-jsqlparser-5.0/src/test/java/com/baomidou/mybatisplus/test/extension/plugins/inner/DynamicTableNameJsqlParserInnerInterceptorTest.java77 symbols
mybatis-plus-jsqlparser-support/mybatis-plus-jsqlparser-4.9/src/test/java/com/baomidou/mybatisplus/test/extension/plugins/inner/DynamicTableNameJsqlParserInnerInterceptorTest.java77 symbols
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/conditions/AbstractWrapper.java71 symbols
mybatis-plus/src/test/java/com/baomidou/mybatisplus/test/h2/H2UserTest.java65 symbols
mybatis-plus-extension/src/main/java/com/baomidou/mybatisplus/extension/conditions/AbstractChainWrapper.java62 symbols
mybatis-plus-core/src/test/java/com/baomidou/mybatisplus/test/toolkit/TableNameParserTest.java58 symbols
mybatis-plus-generator/src/main/java/com/baomidou/mybatisplus/generator/config/builder/Entity.java55 symbols
mybatis-plus-jsqlparser-support/mybatis-plus-jsqlparser/src/main/java/com/baomidou/mybatisplus/extension/plugins/inner/DataChangeRecorderInnerInterceptor.java47 symbols
mybatis-plus-jsqlparser-support/mybatis-plus-jsqlparser-5.0/src/main/java/com/baomidou/mybatisplus/extension/plugins/inner/DataChangeRecorderInnerInterceptor.java47 symbols
mybatis-plus-jsqlparser-support/mybatis-plus-jsqlparser-4.9/src/main/java/com/baomidou/mybatisplus/extension/plugins/inner/DataChangeRecorderInnerInterceptor.java47 symbols
mybatis-plus-core/src/main/java/com/baomidou/mybatisplus/core/MybatisConfiguration.java47 symbols

Used by 2 indexed graphs manifest dependencies, hub-wide

Datastores touched

(mysql)Database · 1 repos
baomidouDatabase · 1 repos
postgresDatabase · 1 repos

For agents

$ claude mcp add mybatis-plus \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact