news 2026/8/20 17:42:23

mybatis-generator-gui-extension 实战教程:3步连接 MySQL 数据库并生成第一个 Mapper 文件

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
mybatis-generator-gui-extension 实战教程:3步连接 MySQL 数据库并生成第一个 Mapper 文件

mybatis-generator-gui-extension 实战教程:3步连接 MySQL 数据库并生成第一个 Mapper 文件

【免费下载链接】mybatis-generator-gui-extension图形化MBG,内置丰富插件,可生成Service、Controller、View,配置简单。 A powerful GUI tool for MyBatisGenerator(MBG)项目地址: https://gitcode.com/gh_mirrors/my/mybatis-generator-gui-extension

mybatis-generator-gui-extension是一款为 MyBatis Generator(MBG)量身打造的图形化代码生成工具。作为图形化 MBG,它让你彻底告别手写 generatorConfig.xml 的繁琐配置,内置分页、逻辑删除、批量插入等丰富插件,只需 3 步就能完成 MySQL 数据库连接并生成第一个 Mapper 文件。本文面向零基础新手,带你走通"连接数据库 → 配置生成规则 → 一键生成代码"的完整实战流程,快速上手这款 MyBatis 代码生成利器。

一、mybatis-generator-gui-extension 是什么?为什么值得一试?

对于长期使用 MyBatis 的 Java 开发者来说,编写实体类、Example 查询对象、Mapper 接口和 XML 映射文件,一直是重复度极高的"体力活"。mybatis-generator-gui-extension 将官方 MBG 命令行工具升级为可视化图形界面,让代码生成变得像填表一样简单:

  • 🚀免写 XML:无需手写繁琐的 generatorConfig.xml 配置文件
  • 🧩内置丰富插件:分页插件(limit/offset)、逻辑删除、批量插入、流式构建、CaseInsensitiveLike 等开箱即用
  • 🗄️多数据库支持:MySQL、Oracle、PostgreSQL、SQL Server 等主流数据库均可直接连接
  • 🔒文件合并保护:重新生成代码时,自动保留未标记@mbg.generated的手写字段与方法

工具主界面一目了然:左侧管理数据库连接,右侧通过标签页配置各类生成选项,底部提供"生成代码"按钮。

二、准备工作:获取并启动工具

开始实战前,先确认环境并启动工具:

  1. 环境要求:JDK 版本需为 1.8u40 及以上
  2. 获取源码:使用 git 克隆仓库
    git clone https://gitcode.com/gh_mirrors/my/mybatis-generator-gui-extension
  3. 启动方式(任选其一):
    • 用 IDE 将项目导入为 Maven 项目,直接运行com.spawpaw.mybatis.generator.gui.GeneratorGuiRunner主类
    • 执行mvn package自行打包 jar,然后运行生成的 jar 包

启动后即可看到上述主界面,现在进入最核心的三步实战。

三、第一步:新建 MySQL 数据库连接

连接数据库是整个流程的地基,操作非常简单:

  1. 点击左侧上方的"新建连接"按钮,弹出连接配置窗口
  2. 依次填写关键参数:
    • 数据库类型:选择MySQL
    • 主机(host):默认localhost,远程库填服务器 IP
    • 端口(port):默认3306
    • 数据库名(dbName):要生成代码的目标库,如user
    • 用户名 / 密码:如root与对应密码
    • 编码:默认utf8,与库保持一致即可
  3. 点击"测试连接",提示成功说明配置无误
  4. 填写连接名称并保存,连接会出现在左侧列表中
  5. 双击该连接,右侧即会加载出数据库中的全部表

小提示:顶部还有"表名匹配模式"(默认%匹配所有表),如果你只想生成部分前缀的表,可在这里用通配符过滤,例如user%

四、第二步:配置生成规则,规划实体与 Mapper

连接数据库后,右侧标签页会提供丰富的配置项,这些决定了生成代码的样式。新手只需重点关注三个标签页:

1. 快捷设置:项目路径与包名

在"快捷设置"页指定项目所在目录BasePackage(如com.example.ssm)、Mapper 类型(推荐XMLMAPPER)以及实体对象名称(如User)。

2. 实体设置:Java Bean 的生成选项

在"实体设置"页可以配置:

  • 实体对象名称 / Example 对象名称:自定义类名后缀
  • 主键:勾选并填入主键字段(如id),会自动生成获取自增主键的 SQL
  • 流式构建插件:支持new User().withUsername("uname")链式创建对象
  • toString / equals / hashCode / Serializable:一键生成常用方法与接口

3. DAO 设置:Mapper 层生成规则

在"DAO 设置"页可以配置:

  • Mapper(XML) 目录与包:如src/main/resources下的mapper
  • Mapper(Java接口) 目录与包:如src/main/java下的com.example.ssm.dao
  • 为 Mapper 添加 @Mapper 注解:省去在启动类扫描配置
  • CRUD 方法开关:Insert、SelectByPrimaryKey、SelectByExample、UpdateByPrimaryKey、DeleteByExample 等按需勾选
  • 分页插件:基于 limit/offset 的分页查询,开箱即用

💡 配置完成后点击"保存配置",下次启动可直接从下拉框加载,无需重复设置。

五、第三步:选中表并一键生成第一个 Mapper 文件

配置就绪后,生成代码只需最后两步:

  1. 在左侧表列表中选择要生成的目标表(如user表)
  2. 点击底部"生成代码"按钮,即可一键生成全部代码

如果你想对单表做精细化控制,还可以先点击"自定义列属性"按钮:在弹窗中取消勾选可忽略某列(不生成该字段),双击字段可修改 JdbcType、JavaType、属性名或指定 TypeHandler。

生成的第一个 Mapper 文件长什么样?

user表为例,工具会自动生成 4 类核心文件:

文件作用
User.java实体类,包含字段、getter/setter 与可选增强方法
UserExample.java条件查询对象,支持复杂 where 条件拼接
UserMapper.javaMapper 接口,声明 CRUD 方法
UserMapper.xmlSQL 映射文件,包含全部 SQL 语句

得益于文件合并特性,如果这些文件已存在,重新生成时会自动保留未标记@mbg.generated的手写代码,不会覆盖你的自定义逻辑,可以放心反复生成。

六、新手常见问题速查

  • 测试连接失败:检查端口是否开放、用户名密码是否正确,MySQL 8.0+ 请确认驱动与字符集兼容
  • 中文乱码:将连接配置中的编码统一设为utf8,与数据库字符集保持一致
  • 生成后看不到新代码:确认"快捷设置"中的项目目录路径正确,代码生成在该目录下
  • 不需要某张表:在连接配置的"表名匹配模式"中用通配符过滤,或直接忽略即可

七、总结

通过以上 3 步——新建 MySQL 数据库连接、配置实体与 Mapper 生成规则、选中表一键生成——你就完成了 mybatis-generator-gui-extension 的首次实战,成功生成了第一个 Mapper 文件。相比手写模板与命令行 MBG,这款图形化工具真正把 MyBatis 代码生成的门槛降到了零。接下来不妨多试试分页插件、逻辑删除、流式构建等内置插件,你会发现更多提效惊喜。🎉

【免费下载链接】mybatis-generator-gui-extension图形化MBG,内置丰富插件,可生成Service、Controller、View,配置简单。 A powerful GUI tool for MyBatisGenerator(MBG)项目地址: https://gitcode.com/gh_mirrors/my/mybatis-generator-gui-extension

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/20 17:41:18

零基础AI入门:12周走完一条不劝退的人工智能学习路线

零基础AI入门:12周走完一条不劝退的人工智能学习路线 【免费下载链接】AI-For-Beginners 12 Weeks, 24 Lessons, AI for All! 项目地址: https://gitcode.com/GitHub_Trending/ai/AI-For-Beginners 很多人的AI入门计划,最终都停在了"收藏&qu…

作者头像 李华
网站建设 2026/8/20 17:39:44

QQ空间说说备份终极指南:3步快速导出全部历史说说

QQ空间说说备份终极指南:3步快速导出全部历史说说 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 上个月整理手机相册时,我一不小心把存了七年的QQ空间截图全部清…

作者头像 李华
网站建设 2026/8/20 17:33:05

从入门到精通:Blazor.Extensions.Canvas 学习路线图与资源清单

从入门到精通:Blazor.Extensions.Canvas 学习路线图与资源清单 【免费下载链接】Canvas HTML5 Canvas API implementation for Microsoft Blazor 项目地址: https://gitcode.com/gh_mirrors/canvas/Canvas 想用 C# 在网页上直接绘制图形、图表甚至运行 3D 场…

作者头像 李华
网站建设 2026/8/20 17:31:32

不学PS也能修好图:免费开源 IOPaint 的 AI 图像修复实战笔记

不学PS也能修好图:免费开源 IOPaint 的 AI 图像修复实战笔记 【免费下载链接】IOPaint Image inpainting tool powered by SOTA AI Model. Remove any unwanted object, defect, people from your pictures or erase and replace(powered by stable diffusion) any …

作者头像 李华
网站建设 2026/8/20 17:23:59

PyABSA 快速上手指南:5 步跑通你的第一个方面级情感分析模型

PyABSA 快速上手指南:5 步跑通你的第一个方面级情感分析模型 【免费下载链接】PyABSA Sentiment Analysis, Text Classification, Text Augmentation, Text Adversarial defense, etc.; 项目地址: https://gitcode.com/gh_mirrors/py/PyABSA PyABSA 是一个开…

作者头像 李华