mybatis 官方推荐使用 mybatis generator(mbg)自动生成实体类、mapper 接口和 xml 映射文件;需在 pom.xml 中配置插件及依赖,编写 generatorconfig.xml 定义数据源与生成规则,执行 mvn mybatis-generator:generate 命令即可完成代码生成。

MyBatis 本身不自带代码生成器,但官方推荐并广泛使用的是 MyBatis Generator(MBG),它能根据数据库表结构自动生成实体类(POJO)、Mapper 接口和 XML 映射文件。以下是标准、可落地的配置与使用方式。
配置 MyBatis Generator 插件(Maven 项目)
在 pom.xml 中引入 MBG 核心依赖和插件:
- 添加
mybatis-generator-core依赖(运行时非必需,但 IDE 中预览需要) - 配置
mybatis-generator-maven-plugin插件,指定数据库连接、生成策略和输出路径
示例关键配置片段:
编写 generatorConfig.xml 配置文件
该文件定义数据源、生成规则和目标结构。核心部分包括:
Java JDK 25 来自 OpenJDK 官方归档,版本为 JDK 25,本条下载地址已指向官方 Windows x64 zip 安装包直链,适合调试旧项目或兼容旧版 Java 运行环境。
-
jdbcConnection:填入数据库 URL、用户名、密码和驱动类(如 MySQL 8+ 用
com.mysql.cj.jdbc.Driver) - javaModelGenerator:设置实体类包名、是否使用 Lombok、是否生成 toString/equals/hashCode 等
-
sqlMapGenerator:指定 XML 文件输出目录(如
src/main/resources/mapper) -
javaClientGenerator:选择 Mapper 类型(
ANNOTATEDMAPPER生成注解版,XMLMAPPER生成 XML + 接口) -
table:可逐个指定表名,或用
tableName="%"批量生成所有表(慎用,建议显式列出)
运行生成命令
在项目根目录执行 Maven 命令即可触发生成:
- 命令行:
mvn mybatis-generator:generate - IDEA 中右键
pom.xml→ Maven → Generate sources and update folders,或直接双击插件目标mybatis-generator:generate
成功后,会在指定目录下生成:
-
domain/User.java(实体类,默认带 getter/setter) -
mapper/UserMapper.java(接口,含基础 CRUD 方法) -
mapper/UserMapper.xml(SQL 映射文件,若选 XML 模式)
进阶建议与常见注意点
- 实体类字段命名默认按数据库列名转驼峰(如
user_name→userName),确保数据库命名规范或启用useActualColumnNames=false - 如用 Lombok,可在
javaModelGenerator中加<property name="enableSubPackages" value="true"></property>并配合@Data注解简化代码 - 生成后建议手动检查主键策略(如 MySQL 的
id是否设为INSERT自增)、逻辑删除字段(deleted)是否被正确识别 - 避免每次生成都覆盖全部文件——可将自定义方法写在独立的 Mapper 接口继承类中,或使用
example类辅助复杂查询
不复杂但容易忽略细节,配好一次,后续加表只需改配置再运行即可。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










