1. 程式人生 > >IDEA中使用mybatis-generator反向生成mybatis相關介面、xml檔案、和實體類

IDEA中使用mybatis-generator反向生成mybatis相關介面、xml檔案、和實體類

環境引數:

①開發工具:IntelliJ IDEA 2018.1.1 x64

②jdk版本:1.8.0_171

③工程構建工具:maven 版本3.2.5 

步驟一:在工程中找到maven的配置檔案pom.xml,在pulgins節點中增加如下內容,即增加maven中對mybatis-generator的外掛支援。新增內容如下:

<!--Mybatis-generator外掛,用於自動生成Mapper和POJO-->
            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.2</version>
                <configuration>
                    <!--配置檔案的位置-->
                    <configurationFile>src/main/resources/generatorConfig.xml
</configurationFile> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> <executions> <execution> <id>Generate MyBatis Artifacts</id> <goals> <goal>generate</goal> </goals> </execution> </executions> <dependencies> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.2</version> </dependency> </dependencies> </plugin>

步驟二:

在工程中src/main/resources/下建立一個mybatis-generator能識別的xml配置檔案,即上一步中紅色標記的部分,建立這個配置檔案的目的是用generator外掛來讀取配置資訊,如要反向生成的資料庫資訊,反向出來的實體類、mapper介面類、及對映sql的xml檔案的儲存位置。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>
    <!--mysql 連線資料庫jar 這裡選擇自己本地位置-->
    <classPathEntry location="E:\ojdbc6.jar" />
    <context id="testTables" targetRuntime="MyBatis3">
        <commentGenerator>
            <!-- 是否去除自動生成的註釋 true:是 : false:否 -->
            <property name="suppressAllComments" value="true" />
        </commentGenerator>
        <!--資料庫連線的資訊:驅動類、連線地址、使用者名稱、密碼 -->
        <jdbcConnection driverClass="oracle.jdbc.OracleDriver"
                        connectionURL="jdbc:oracle:thin:@localhost:1521:orcl"
                        userId="xxx"
                        password="xxx">
        </jdbcConnection>
        <!-- 預設false,把JDBC DECIMAL 和 NUMERIC 型別解析為 Integer,為 true時把JDBC DECIMAL 和
           NUMERIC 型別解析為java.math.BigDecimal -->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>

        <!-- targetProject:生成PO類的位置 -->
        <javaModelGenerator targetPackage="com.test.pojo"
                            targetProject="src/main/java">
            <!-- enableSubPackages:是否讓schema作為包的字尾 -->
            <property name="enableSubPackages" value="false" />
            <!-- 從資料庫返回的值被清理前後的空格 -->
            <property name="trimStrings" value="true" />
        </javaModelGenerator>
        <!-- targetProject:mapper對映檔案生成的位置
           如果maven工程只是單獨的一個工程,targetProject="src/main/java"
           若果maven工程是分模組的工程,targetProject="所屬模組的名稱",例如:
           targetProject="ecps-manager-mapper",下同-->
        <sqlMapGenerator targetPackage="mybatis"
                         targetProject="src/main/resources">
            <!-- enableSubPackages:是否讓schema作為包的字尾 -->
            <property name="enableSubPackages" value="false" />
        </sqlMapGenerator>
        <!-- targetPackage:mapper介面生成的位置 -->
        <javaClientGenerator type="XMLMAPPER"
                             targetPackage="com.test.dao"
                             targetProject="src/main/java">
            <!-- enableSubPackages:是否讓schema作為包的字尾 -->
            <property name="enableSubPackages" value="false" />
        </javaClientGenerator>
        <!-- 指定資料庫表 -->
        <table schema="" tableName="TABLE"></table>
    </context>
</generatorConfiguration>

建立路徑如下:


步驟三:

在IDEA中配置執行引數,選擇Edit Configurations:


在Run Configurations中選擇【+】,然後選擇Maven,在Name中輸入自定義名稱,Command Line中輸入mybatis-generator:generate -e (固定格式),最後點選OK。


步驟四:

將run 按鈕處的配置引數選擇成剛才配置的,然後點選執行。

好了,可以看到console控制檯中有生成的資訊在滾動,稍等片刻,在配置好的包名下能看到反向生成好的Mapper介面類、對映sql的xml檔案、以及與資料庫表對應的實體類。