1、添加Maven的mybatis-generator的依賴
<build>
<plugins>
<plugin>
<!--這個插件已經包含了mybatis-generator-core且版本已經幫我們配置了,不用再單獨聲明依賴-->
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.4.0</version>
<!--不要懷疑,這裏必須得配上數據庫驅動,不然在生成器的xml配置絕對路徑更麻煩-->
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.15</version>
</dependency>
</dependencies>
<configuration>
<overwrite>true</overwrite>
</configuration>
</plugin>
</plugins>
</build>
2、在resources目錄下創建並配置generatorConfig.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" >
<generatorConfiguration>
<!--id任意,targetRuntime是有固定幾個字段可取的詳情見http://mybatis.org/generator/configreference/context.html
常用的MyBatis3DynamicSql、MyBatis3-->
<context id="mybatisGenerator" targetRuntime="Mybatis3">
<!--一定要聲明這個插件,不然運行項目的時候會報錯-->
<plugin type="org.mybatis.generator.plugins.UnmergeableXmlMappersPlugin" />
<!--true爲不生成註解,如果爲false,dao、domain、xml文件中會有大量註解-->
<commentGenerator>
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!--配置數據源,必須配置-->
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://127.0.0.1:3306/mybatisTest?serverTimezone=UTC"
userId="root"
password="qisini"/>
<!--生成實體類且每個實體類都會生成一個對應的後綴名爲Example的類,必須配置-->
<javaModelGenerator targetPackage="com.di.domain" targetProject="src/main/java">
<property name="enableSubPackages" value="true" />
<!-- 設置是否在getter方法中,對String類型字段調用trim()方法 -->
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!--生成的sql映射的mapper的xml-->
<sqlMapGenerator targetPackage="mappers" targetProject="src/main/resources">
<property name="enableSubPackages" value="true"/>
</sqlMapGenerator>
<!--生成的接口類-->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.di.dao" targetProject="src/main/java">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!--表,表中的下劃線會自動處理成駝峯命名,必須配置-->
<table tableName="book" domainObjectName="Book"/>
</context>
</generatorConfiguration>
三個必須配置項:
- jdbcConnection
- javaModelGenerator
- table
必須聲明的插件
<plugin type="org.mybatis.generator.plugins.UnmergeableXmlMappersPlugin" />
上述配置文件生成的代碼對應如下: