1. 程式人生 > >Mybatis逆向生成程式碼

Mybatis逆向生成程式碼

通過表生成程式碼只需要以下3個步驟

1.新建Maven工程在pom.xml中引入程式碼生成器外掛

<build>
    <finalName>generator</finalName>
    <plugins>
 <plugin>
  <groupId>org.mybatis.generator</groupId>
  <artifactId>mybatis-generator-maven-plugin</artifactId>
  <version>1.3.2</version>
  <configuration>
  <configurationFile>src\main\java\generatorConfig.xml</configurationFile>
  <verbose>true</verbose>
  <overwrite>true</overwrite>
  </configuration>
 </plugin>
 </plugins>
  </build>

2.配置剛剛由程式碼生成器引入的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>
    <classPathEntry location="E:\M2_Repository\mysql\mysql-connector-java\5.1.10\mysql-connector-java-5.1.10.jar"/>
    <!-- context元素用於指定生成一組物件的環境。targetRuntime:此屬性用於指定生成的程式碼的執行時環境。MyBatis3:*這是預設值*-->
    <context id="testTables" targetRuntime="MyBatis3">
        <commentGenerator>
            <!-- 是否去除自動生成的註釋 true:是 : false:否 -->
            <property name="suppressAllComments" value="true" />
        </commentGenerator>
        <!--資料庫連線的資訊:驅動類、連線地址、使用者名稱、密碼 -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
            connectionURL="jdbc:mysql://127.0.0.1:3306/test" userId="root"
            password="721214wan..">
        </jdbcConnection>
        <!-- 如使用oracle請參考如下 -->
        <!-- <jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver"
            connectionURL="jdbc:oracle:thin:@127.0.0.1:1521:orcl" 
            userId="scott"
            password="wcy675600920">
        </jdbcConnection> -->
 
        <!-- 預設false,把JDBC DECIMAL 和 NUMERIC 型別解析為 Integer,為 true時把JDBC DECIMAL 和 
            NUMERIC 型別解析為java.math.BigDecimal -->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>
 
        <!-- targetProject:生成PO類的位置 -->
        <javaModelGenerator targetPackage="model"
            targetProject=".\src">
            <!-- enableSubPackages:是否讓schema作為包的字尾 -->
            <property name="enableSubPackages" value="false" />
            <!-- 從資料庫返回的值被清理前後的空格 -->
            <property name="trimStrings" value="true" />
        </javaModelGenerator>
        <!-- targetProject:mapper對映檔案生成的位置 -->
        <sqlMapGenerator targetPackage="mapper" 
            targetProject=".\src">
            <!-- enableSubPackages:是否讓schema作為包的字尾 -->
            <property name="enableSubPackages" value="false" />
        </sqlMapGenerator>
        <!-- targetPackage:mapper介面生成的位置 -->
        <javaClientGenerator type="XMLMAPPER"
            targetPackage="mapper" 
            targetProject=".\src">
            <!-- enableSubPackages:是否讓schema作為包的字尾 -->
            <property name="enableSubPackages" value="false" />
        </javaClientGenerator>
        
        <!-- 指定資料庫表 -->
        <table tableName="t_role" schema="" enableCountByExample="false"
                enableDeleteByExample="false" enableUpdateByExample="false"
                enableSelectByExample="false" selectByExampleQueryId="false"></table>
                
    
        <!-- 有些表的欄位需要指定java型別
         <table schema="" tableName="">
            <columnOverride column="" javaType="" />
        </table> -->
    </context>
</generatorConfiguration>

3.右擊run as –>maven build,在Goals:中填入mybatis-generator:generate再點選執行,右鍵重新整理專案就可以了。