注:
本文主要介紹的是使用jar包生成相應的文件. 而不是導入maven依賴.
1.爲什麼要使用逆向工程生成代碼?
我們在數據庫當中新建了一個數據表的時候,就需要編寫對應的POJO 和 Mapper。但由於單表的增刪改查的mapper文件以及對應的pojo基本上都是一個模式的,或者也是相差不遠的,故使用mybatis-generator逆向工程生成mapper文件以及pojo( 方便 , 效率高 )
/////////////下面就開始介紹如何使用mybatis generator/////////////////
MyBatis Generator:
是一款mybatis自動代碼生成工具,可以通過配置後自動生成文件。
一、首先去官網下載 MyBatis Generator.
1.下載地址:https://github.com/mybatis/generator/releases
注: 本文使用的是1.3.7 , 目前最新版本是1.3.7。
2.下載完成 , 並解壓後( 打開有一個lib目錄 , lib裏有3個jar包 )
二、創建配置文件generatorConfig.xml
1.創建src包( 用於存放生成的文件 -> targetProject="src"配置指定輸出目錄爲src )
2.lib下導入mysql-connector驅動包.
3.lib下創建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連接驅動-->
<classPathEntry location="mysql-connector-java-5.1.37.jar" />
<!--數據庫鏈接URL,用戶名、密碼 -->
<context id="MySQL" targetRuntime="MyBatis3">
<commentGenerator>
<property name="suppressDate" value="true"/>
<!-- 是否去除自動生成的註釋 true:是 : false:否 -->
<property name="suppressAllComments" value="true"/>
</commentGenerator>
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://127.0.0.1/jxj"
userId="root"
password="">
</jdbcConnection>
<!--是否啓用java.math.BigDecimal-->
<javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- 生成模型的包名和位置-->
<javaModelGenerator targetPackage="jxj.model" targetProject="src">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- 生成映射文件的包名和位置-->
<sqlMapGenerator targetPackage="jxj.xml" targetProject="src">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!-- 生成DAO的包名和位置-->
<javaClientGenerator type="XMLMAPPER" targetPackage="jxj.dao" targetProject="src">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!-- 要生成的表 tableName是數據庫中的表名或視圖名 domainObjectName是實體類名-->
<table tableName="user" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false">
</table>
</context>
</generatorConfiguration>
三、使用命令生成代碼.
兩種方式:
1.在cmd命令行定位到解壓的lib目錄下 , 輸入命令:
java -jar mybatis-generator-core-1.3.7.jar -configfile generatorConfig.xml -overwrite
2.使用上圖所看到的 , 創建一個bat文件. 裏面寫入命令 , 執行就會生成代碼!
注: bat文件 要跟 generator.xml文件放在同一目錄下.
命令如圖 -> 以及執行結果.
3.打開src目錄 , 就會發現對應的文件生成了!
注:
一般都不會報錯. 若有 Exception in thread “main” java.lang.NoClassDefFoundError: java/time/temporal/TemporalAccessor錯誤.
請看下文分解.