Mybatis-generator的使用

一、核心文件generator.xml

指定數據庫jar包位置、數據庫連接信息、生成包的位置、表名等關鍵信息。該文件放在任意位置。


<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">


<generatorConfiguration>

  <!-- 數據庫的JDBC驅動的jar包地址 -->

  <classPathEntry location="F:\xy\jars\mysql-connector-java-5.0.7-bin.jar" />

  

 <context id="DB2Tables" targetRuntime="MyBatis3">

 <!-- 是否去除自動生成的註釋 -->

 <commentGenerator>

<property name="suppressAllComments" value="true" />

 </commentGenerator>

 

 <!-- 數據庫連接的信息 -->

<jdbcConnection driverClass="com.mysql.jdbc.Driver"

connectionURL="jdbc:mysql://localhost:3306/db_MybatisTest" 

userId="root" password="mysqltest">

 </jdbcConnection>

 

 <!-- false:JDBC DECIMAL、NUMERIC類型解析爲Integer,默認方式 -->

 <!-- true: JDBC DECIMAL、NUMERIC類型解析爲java.math.BigDecimal -->

 <javaTypeResolver>

<property name="forceBigDecimals" value="false" />

 </javaTypeResolver>

 

 <!-- 生成模型的包名和位置 -->

 <javaModelGenerator targetPackage="com.xy.model" targetProject="F:\xy\mybatis-generator\src">

 <!-- 是否讓schema作爲包的後綴 -->

 <property name="enableSubPackages" value="true" />

 <!-- 從數據庫返回的值被清理前後的空格 -->

 <property name="trimStrings" value="true" />

 </javaModelGenerator>

 

 <!-- 生成映射文件的包名和位置 -->

 <sqlMapGenerator targetPackage="com.xy.mapping"  targetProject="F:\xy\mybatis-generator\src">

  <property name="enableSubPackages" value="false" />

 </sqlMapGenerator>

 

 <!-- 生成DAO的包名和位置 -->

 <javaClientGenerator type="XMLMAPPER" targetPackage="com.xy.dao" targetProject="F:\xy\mybatis-generator\src">

<property name="enableSubPackages" value="true" />

 </javaClientGenerator>


 <!-- tableName:數據庫表 -->

 <!-- domainObjectName:對應於數據庫表的javaBean類名 -->

 <table tableName="t_student" domainObjectName="Student" enableCountByExample="false" 

enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"  selectByExampleQueryId="false">

<!-- 忽略該字段(可省略) -->

<ignoreColumn column="name" />

 </table>

</context>

</generatorConfiguration>


二、table標籤解析

①屬性

schema即爲數據庫名,tableName爲對應的數據庫表,domainObjectName是要生成的實體類。

若要生成例子可將enableCountByExample等設爲true, 就會生成一個對應domainObjectName的Example類,false則不生成,默認策略是true。

類似的還有enableUpdateByExample、enableDeleteByExample、enableSelectByExample、selectByExampleQueryId屬性。


②子標籤

若要對某些數據庫字段進行操作,可以在table標籤中加入如下標籤

1、忽略某個字段 

<ignoreColumn column="name" />

2、無論數據庫字段是何類型,生成的類屬性都是varchar

<columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />


三、生成

mybatis-generator-core-1.3.2.jar是核心jar包,可在網上自行下載。命令窗口執行語句,執行成功後就會在generator.xml文件中指定的位置找到代碼了。

java -jar F:\xy\jars\mybatis-generator-core-1.3.2.jar -configfile F:\xy\generator.xml -overwrite


四、總結

使用Mybatis Generator需要

①兩個jar包——mybatis-generator-core-1.3.2.jar和數據庫jar包

②一個配置文件generator.xml

③執行語句


五、注意事項

①generator.xml格式:必須是以UTF-8無BOM格式編碼,用notepad++轉換。

②注意數據庫包的可用性,無效的數據庫包轉換會報錯。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章