前言:
一、首先,我們需要引入所需要的jar包
1、mybatis-generator所需的jar包
mybatis-generator-core-1.3.5.jar (mybatis-generator-core的版本可以自行選擇)
mybatis-generator下載地址:https://github.com/mybatis/generator/releases
2、數據庫連接jar包
根據自己的需要選擇數據庫驅動
oracle的驅動:ojdbc6.jar
mysql驅動:mysql-connector-java.jar
postgre驅動:postgresql-9.3-1102.jdbc4.jar
使用postgre進行舉例
二、Mybatis-Generator配置文件詳解
1、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>
<!--這裏寫配置-->
</generatorConfiguration>
2、指定數據庫驅動包位置
<!-- 指定數據連接驅動jar地址 -->
<!-- <classPathEntry location="${classPath}" /> -->
<classPathEntry location="D:\Repository\Publish\ojdbc6.jar" />
3、數據庫連接參數和自動生成參數配置
<?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>
<!-- 指定數據連接驅動jar地址 -->
<classPathEntry location="E:\mybatis-generator\postgresql-9.3-1102.jdbc4.jar" />
<context id="SqlTables" targetRuntime="MyBatis3">
<!-- 註釋 -->
<commentGenerator>
<property name="suppressAllComments" value="true" /><!-- 是否取消註釋 -->
<property name="suppressDate" value="true" /><!-- 是否生成註釋代時間戳 -->
</commentGenerator>
<jdbcConnection driverClass="org.postgresql.Driver" connectionURL="jdbc:postgresql://127.0.0.1:5432/JS_VNMP5.1" userId="postgres" password="123456" />
<!-- 類型轉換 -->
<javaTypeResolver>
<!-- 是否使用bigDecimal, false可自動轉化以下類型(Long, Integer, Short, etc.) -->
<property name="forceBigDecimals" value="false"/>
</javaTypeResolver>
<!-- 生成實體類地址 -->
<javaModelGenerator targetPackage="cc.eguid.entity"
targetProject="E:\mybatis-generator\src\main\java" >
<property name="enableSubPackages" value="false"/>
<!--設置父類 <property name="rootClass" value="cc.eguid.entity.baseEntity"/> -->
<property name="trimStrings" value="true"/>
</javaModelGenerator>
<!-- 生成mapxml文件 -->
<sqlMapGenerator targetPackage="cc.eguid.dao"
targetProject="E:\mybatis-generator\src\main\java" >
<!-- 是否在當前路徑下新加一層schema,eg:fase路徑com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] -->
<property name="enableSubPackages" value="false"/>
</sqlMapGenerator>
<!-- 生成mapxml對應client,也就是接口dao -->
<javaClientGenerator targetPackage="cc.eguid.dao"
targetProject="E:\mybatis-generator\src\main\java" type="XMLMAPPER" >
<!-- 是否在當前路徑下新加一層schema,eg:fase路徑com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] -->
<property name="enableSubPackages" value="false"/>
</javaClientGenerator>
<!-- 用戶權限表 -->
<table tableName="eguid_userrole" domainObjectName="Userrole" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
</context>
</generatorConfiguration>
三、通過命令行運行
1、執行命令(generatorConfig.xml爲配置文件)
java -jar mybatis-generator-core-1.3.5.jar -configfile generatorConfig.xml -overwrite
2、建議在mybatis-generator-core-1.3.5.jar所在文件夾下新建一個xxx.bat文件,裏面放入上面的命令,就可以方便自動生成
完成上述操作後,執行xxx.bat文件即可在對應文件夾中生成三個文件,xxxmapper.xml,xxxmapper.java,xxx.java
注意:請務必保證要生成的路徑已經存在,否則會執行失敗
3、一個完整的xxx.bat執行文件
@echo off
java -jar mybatis-generator-core-1.3.5.jar -configfile generatorConfig.xml -overwrite
pause
四、使用總結
1、引入mybatis-generator的jar包和數據庫驅動jar包
2、配置mybatis-generator的配置文件
2.1、指定數據庫驅動jar包的位置和數據庫連接配置
2.2、配置實體類生成器(javaModelGenerator),可以通過配置rootClass屬性爲實體類指定繼承的父類
2.3、配置SQL映射文件生成器(sqlMapGenerator)
2.4、配置dao層接口生成器(javaClientGenerator)
3、使用命令行執行mybatis-generator即可生成