1. 程式人生 > >SpringBoot整合MyBatis Generator程式碼生成器

SpringBoot整合MyBatis Generator程式碼生成器

在原有SpringBoot+gradle構建的專案上(專案地址chen1218chen/Springboot-Mybatis-Gradle)繼續整合MyBatis Generator來自動生成model層、dao層程式碼,以實現快速開發。

修改build.gradle檔案

首先,在gradle的配置檔案中新增依賴:

compile group: 'org.mybatis.generator', name: 'mybatis-generator-core', version:'1.3.2'

generator.xml

在src/main/resource下新增generator.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>

    <context id="DB2Tables" targetRuntime="MyBatis3">

        <!--自動實現Serializable介面-->
        <plugin type="org.mybatis.generator.plugins.SerializablePlugin"></plugin>

        <!-- 去除自動生成的註釋 -->
        <commentGenerator>
            <property name="suppressAllComments" value="true" />
        </commentGenerator>

        <!--資料庫基本資訊-->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://127.0.0.1:3306/boot?characterEncoding=UTF-8"
                        userId="myuser"
                        password="123456">
        </jdbcConnection>

        <!--生成實體類的位置以及包的名字-->
        <javaModelGenerator targetPackage="com.cc.entity"
                            targetProject="src\main\java">
            <property name="enableSubPackages" value="true" />
            <property name="trimStrings" value="true" />
        </javaModelGenerator>

        <!--生成對映檔案存放位置-->
        <sqlMapGenerator targetPackage="com.cc.dao" targetProject="src\main\java">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
        <!--生成Dao類存放位置,mapper介面生成的位置-->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.cc.dao" targetProject="src\main\java">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>
        <!--生成對應表及類名-->
        <table tableName="item"  domainObjectName="Item"></table>
        <table tableName="image"  domainObjectName="Image"></table>

        <!--對應的表名,以及實體名-->
        <!-- <table tableName="t_emp" domainObjectName="EMP" ></table> -->

    </context>

</generatorConfiguration>

需要注意的是,需提前在資料庫中建好對應的表,否則會報錯Table configuration with catalog null, schema null

執行類

最後,在寫一個main函式來啟動執行。

package com.cc.main;

import org.mybatis.generator.api.ShellRunner;

/**
 * 執行類
 */
public class MybatisGeneratorApp
{
    public static void main( String[] args )
    {
        args = new String[] { "-configfile", "src\\main\\resources\\generator.xml", "-overwrite" };
        ShellRunner.main(args);
    }
}

這樣重新整理一下工程即可看到新生成的java檔案,如下圖所示:

這裡寫圖片描述