【Mybatis】簡單實現mybatis逆向工程
阿新 • • 發佈:2019-02-19
之前做專案經常聽說通過mybatis逆向工程直接生成程式碼,直接使用即可,但是mybatis是如何通過逆向工程生成程式碼的,一直不是很瞭解,最近通過一個小例子實現了一下,下面簡單總結一下:
通過mybatis逆向工程自動生成*-mapper.java介面檔案,model實體類,以及*Mapper.xml sql對映檔案,demo是基於maven專案。
1、在專案的pom檔案中,新增mybatis-generator-maven-plugin外掛
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
</plugin>
2、編寫generatorConfig.xml配置檔案,具體見配置檔案註釋
<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEgeneratorConfigurationPUBLIC"-//mybatis.org//DTDMyBatisGeneratorConfiguration1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
<!--資料庫驅動-->
<propertiesresource="jdbc.properties"/>
<classPathEntrylocation="D:\maven\repo\mysql\mysql-connector-java\5.1.29\mysql-connector-java-5.1.29.jar"/>
<contextid="DB2Tables">
<!--生成的Java檔案的編碼-->
<propertyname="javaFileEncoding"value="UTF-8"/>
<!--格式化java程式碼-->
<propertyname="javaFormatter"value="org.mybatis.generator.api.dom.DefaultJavaFormatter"/>
<!--格式化XML程式碼-->
<propertyname="xmlFormatter"value="org.mybatis.generator.api.dom.DefaultXmlFormatter"/>
<!--註釋-->
<commentGenerator>
<propertyname="suppressAllComments"value="true"/><!--是否取消註釋-->
<propertyname="suppressDate"value="true"/><!--是否生成註釋代時間戳-->
</commentGenerator>
<!--資料庫連結URL,使用者名稱、密碼-->
<jdbcConnection driverClass="${driverClasss}" connectionURL="${jdbcUrl}" userId="${username}" password="${password}"/>
<!--型別轉換-->
<javaTypeResolver>
<!--是否使用bigDecimal,false可自動轉化以下型別(Long,Integer,Short,etc.)-->
<propertyname="forceBigDecimals"value="false"/>
</javaTypeResolver>
<!--生成實體類地址-->
<javaModelGeneratortargetPackage="com.ssm.demo.model"targetProject="src/main/java">
<!--是否針對string型別的欄位在set的時候進行trim呼叫-->
<propertyname="trimStrings"value="false"/>
</javaModelGenerator>
<!--生成mapxml檔案-->
<sqlMapGeneratortargetPackage="com.ssm.demo.dao"targetProject="src/main/java"/>
<!--生成mapxml對應client,也就是介面dao-->
<javaClientGeneratortargetPackage="com.ssm.demo.dao"targetProject="src/main/java"type="XMLMAPPER"/>
<!--配置表資訊-->
<!--tableName為對應的資料庫表
domainObjectName是要生成的實體類
enable*ByExample是否生成example類
-->
<tabletableName="users" domainObjectName="users_model"
enableCountByExample="true"
enableDeleteByExample="true"
enableSelectByExample="true"
enableUpdateByExample="true"/>
</context>
</generatorConfiguration>
3、最後一步,生成程式碼
點選Maven Project——自己的專案——Plugins——右擊mybatis generator——Run Maven build
生成成功:
相關檔案生成成功: