如何使用MyBatis代码生成工具MyBatis Generator

2025-04-21 02:42:03

1、通过 Spring Initializr 创建一个SpringBoot应用,必须选择的依赖有 lombok (简化代码开发), H2 database(一款内存型关系数据库) 和 MyBatis framework(MyBatis框架)。将生成的工程导入到Eclipse中,为了演示如何处理自定义类型和数据库表列的映射,这里会引入 joda-money 中的 Money 类来表示实体类中的货币金额,所以我们需要先在 pom.xml 中添加 joda-money 的依赖。

如何使用MyBatis代码生成工具MyBatis Generator
如何使用MyBatis代码生成工具MyBatis Generator
如何使用MyBatis代码生成工具MyBatis Generator

2、MyBatis是根据表结构自动生成POJO(实体类)和Mapper接口以及描述其实现的xml文件。图1示:在工程的 resources 目录下建一个 schema.sql 文件,其中包含建表语句,该语句会在启动类运行时自动执行(注意这种方式只适用于 H2 这种内存型数据库,如果你使用其他数据库,这里就手动创建表结构即可)。图2示:该表中的 price 列代表货币金额(bigint整型),我们希望在实体类中,其使用 joda-money 中的Money类型来声明,所以我们还需定义一个类型处理类,来实现实体类中的 Money 类型和数据库表中的整型列进行转换。

如何使用MyBatis代码生成工具MyBatis Generator
如何使用MyBatis代码生成工具MyBatis Generator

3、编写自动生成代码所需的配置文件图1示:在 resources 目录下新建配置文竭惮蚕斗件 generatorConfi爿讥旌护g.xml,并填充插件和数据库连接相关的配置项,插件是为了增强最后自动生成的POJO(实体类)的相关功能。图2示:配置自动生成的实体类(POJO)保存路径、Mapper接口的保存路径以及其实现方式和XML文件的保存路径,Mapper接口的实现方式有 3 种:ANNOTATEDMAPPER(纯注解方式)、XMLMAPPER(纯XML方式)和 MIXEDMAPPER (混合方式),通常我们会设置为 MIXEDMAPPER (混合方式),对于Mapper接口中简单的方式,会只用注解形式,对于复杂方法,会使用 XML 的形似。

如何使用MyBatis代码生成工具MyBatis Generator
如何使用MyBatis代码生成工具MyBatis Generator

4、编写测试方法并按照配置自动生成相关代码图1示:pom.xml 文件中引入 My幞洼踉残Batis Generator 的相关依赖图2示:启动类搏皋咬夼实现 ApplicationRunner 接口,并重写run方法,该方法在Spring框架启动完成后,自动执行。在 run 方法中,调用 MyBatis Generator 提供的相关接口来完成代码的自动生成工作,注意,唯一需要变化的东西就是我们编写的配置文件的名称。图3示:运行启动类,执行完毕后,刷新工程,可以看到 MyBatis Generator为我们自动生成的 POJO 实体类和Mapper 接口以及其实现对应的XML文件。

如何使用MyBatis代码生成工具MyBatis Generator
如何使用MyBatis代码生成工具MyBatis Generator
如何使用MyBatis代码生成工具MyBatis Generator
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢