一、基础配置示例# application.yml mybatis-plus: # 全局配置 global-config: # 是否打印banner banner: true # 数据库相关配置 db-config: # 主键类型 (AUTO:数据库自增, INPUT:手动输入, ASSIGN_ID:雪花算法, ASSIGN_UUID:UUID) id-type: auto # 表名是否使用下划线命名 (默认:true) table-underline: true # 逻辑删除字段名 logic-delete-field: deleted # 逻辑删除值(默认:1) logic-delete-value: 1 # 逻辑未删除值(默认:0) logic-not-delete-value: 0 # 插入时是否自动填充字段 insert-strategy: not_null # 更新时是否自动填充字段 update-strategy: not_null # 查询时是否自动填充字段 where-strategy: not_null # 数据库类型 db-type: mysql # 刷新mapper refresh-mapper: true # 配置mapper.xml文件位置 mapper-locations: - classpath*:/mapper/**/*.xml - classpath*:/mybatis/mapper/*.xml # 实体类包路径(用于别名) type-aliases-package: com.example.demo.entity # TypeHandler包路径 type-handlers-package: com.example.demo.handler # 配置MyBatis基础配置 configuration: # 开启驼峰命名转换 map-underscore-to-camel-case: true # 开启二级缓存 cache-enabled: true # 开启延迟加载 lazy-loading-enabled: true # 积极懒加载(false表示按需加载) aggressive-lazy-loading: false # 开启sql日志 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 默认执行器(REUSE:重用预处理语句) default-executor-type: reuse # 是否开启自动映射 auto-mapping-behavior: partial # 是否允许JDBC生成主键 use-generated-keys: true # 配置类型处理器包 type-enums-package: com.example.demo.enums二、分页插件配置mybatis-plus: # 分页插件配置 configuration: # 分页方言 call-setters-on-nulls: true # 全局分页配置 global-config: db-config: # 分页大小 pagination-interceptor: # 默认每页条数 default-page-size: 10 # 最大每页条数 max-limit: 1000三、多环境配置示例# application-dev.yml (开发环境) mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl global-config: banner: true db-config: logic-delete-value: 1 logic-not-delete-value: 0 # application-prod.yml (生产环境) mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.nologging.NoLoggingImpl global-config: banner: false db-config: logic-delete-value: 1 logic-not-delete-value: 0四、完整配置参数说明表配置项说明默认值可选值global-config.banner是否打印bannertruetrue/falseglobal-config.refresh-mapper是否刷新mapperfalsetrue/falseglobal-config.db-config.id-type全局主键类型ASSIGN_IDAUTO, INPUT, ASSIGN_ID, ASSIGN_UUID, NONEglobal-config.db-config.table-underline表名、字段名下划线转驼峰truetrue/falseglobal-config.db-config.logic-delete-field逻辑删除字段名deleted自定义字段名global-config.db-config.logic-delete-value逻辑删除值1任意值global-config.db-config.logic-not-delete-value逻辑未删除值0任意值global-config.db-config.db-type数据库类型UNKNOWNMYSQL, ORACLE, SQLSERVER, POSTGRE_SQL等mapper-locationsMapper XML文件位置classpath:/mapper/**/.xml自定义路径type-aliases-package实体类包路径null包路径type-handlers-packageTypeHandler包路径null包路径configuration.map-underscore-to-camel-case驼峰命名转换truetrue/falseconfiguration.cache-enabled二级缓存开关truetrue/falseconfiguration.lazy-loading-enabled延迟加载开关falsetrue/falseconfiguration.log-impl日志实现无StdOutImpl, Slf4jImpl等configuration.default-executor-type默认执行器类型SIMPLESIMPLE, REUSE, BATCHconfiguration.auto-mapping-behavior自动映射行为PARTIALNONE, PARTIAL, FULL五、常用组合配置示例1. MySQL开发环境配置mybatis-plus: mapper-locations: classpath*:/mapper/**/*.xml type-aliases-package: com.example.entity global-config: db-config: id-type: auto logic-delete-field: deleted logic-delete-value: 1 logic-not-delete-value: 0 configuration: map-underscore-to-camel-case: true log-impl: org.apache.ibatis.logging.stdout.StdOutImpl cache-enabled: false2. Oracle生产环境配置mybatis-plus: mapper-locations: classpath*:/mapper/oracle/**/*.xml type-aliases-package: com.example.entity global-config: db-config: id-type: input db-type: oracle logic-delete-field: is_deleted logic-delete-value: Y logic-not-delete-value: N configuration: map-underscore-to-camel-case: true log-impl: org.apache.ibatis.logging.nologging.NoLoggingImpl cache-enabled: true六、注意事项配置优先级XML配置 YAML配置 默认配置逻辑删除需要在实体类对应字段添加TableLogic注解分页插件需要单独配置PaginationInterceptorBean性能优化生产环境关闭SQL日志输出版本兼容不同版本配置项可能有差异建议查阅对应版本文档这个配置涵盖了MyBatis-Plus的大部分常用配置可以根据实际项目需求进行调整。