mybatis自動生成程式碼generator.xml的配置
阿新 • • 發佈:2019-01-04
這個我也是才會用,主要是學習了我們老大的【配置】:
generator.xml配置:
generator.properties的配置:<?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> <!-- 引用配置檔案 --> <!-- <properties resource="classpath:generator.properties" /> --> <classPathEntry location="F:/ruanjian/repository-teacher/mysql/mysql-connector-java/5.1.38/mysql-connector-java-5.1.38.jar" /> <!-- flat:該模型為每一張表只生成一個實體類。這個實體類包含表中的所有欄位。**這種模型最簡單,推薦使用。** --> <context id="learn" targetRuntime="MyBatis3Simple" defaultModelType="flat"> <!--去除註釋 (true好像不起作用) --> <commentGenerator> <!-- suppressAllComments:**阻止**生成註釋,預設為false --> <property name="suppressAllComments" value="true" /> <!-- suppressDate:**阻止**生成的註釋包含時間戳,預設為false --> <property name="suppressDate" value="true" /> </commentGenerator> <!--資料庫連線 --> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1/test" userId="root" password="gyy0805"> </jdbcConnection> <!-- 這個元素的配置用來指定JDBC型別和Java型別如何轉換。 --> <!-- 預設false,把JDBC DECIMAL 和 NUMERIC 型別解析為 Integer true,把JDBC DECIMAL 和 NUMERIC 型別解析為java.math.BigDecimal --> <javaTypeResolver> <property name="forceBigDecimals" value="true" /> </javaTypeResolver> <!-- 該元素用來控制生成的實體類 --> <!-- targetPackage:生成實體類存放的包名,一般就是放在該包下。實際還會受到其他配置的影響(<table>中會提到)。 targetProject:指定目標專案路徑,使用的是檔案系統的絕對路徑。 --> <javaModelGenerator targetPackage="org.gyy.entity.user" targetProject="learn/src/main/java"> <!-- enableSubPackages:如果true,MBG會根據catalog和schema來生成子包。如果false就會直接用targetPackage屬性。預設為false --> <property name="enableSubPackages" value="true" /> <!-- trimStrings:是否對資料庫查詢結果進行trim操作,如果設定為true就會生成類似這樣public void setUsername(String username) {this.username = username == null ? null : username.trim();}的setter方法。預設值為false。 --> <property name="trimStrings" value="false" /> <!-- rootClass:設定所有實體類的基類。 --> <property name="rootClass" value="org.gyy.entity.BaseEntity" /> </javaModelGenerator> <!--生成SQLMAP檔案 --> <sqlMapGenerator targetPackage="org.gyy.mapper.user" targetProject="learn/src/main/java"> <property name="enableSubPackages" value="true" /> </sqlMapGenerator> <!--生成Dao檔案 可以配置 type="XMLMAPPER"生成xml的dao實現context id="DB2Tables" 修改targetRuntime="MyBatis3" --> <javaClientGenerator type="XMLMAPPER" targetPackage="org.gyy.mapper.user" targetProject="learn/src/main/java"> <property name="enableSubPackages" value="true" /> <!-- 能夠繼承的父介面 --> <property name="rootInterface" value="org.gyy.mapper.IBaseMapper" /> <property name="methodNameCalculator" value="extended" /> </javaClientGenerator> <!--對應資料庫表 mysql可以加入主鍵自增 欄位命名 忽略某欄位等 --> <table tableName="test"/> </context> </generatorConfiguration>
maven的plugins:#資料庫連線 driver=com.mysql.jdbc.Driver #伺服器配置 url=jdbc:mysql://127.0.0.1/test user=root password=123456 classpath=F:/ruanjian/repository-teacher/mysql/mysql-connector-java/5.1.38/mysql-connector-java-5.1.38.jar #專案路徑配置 project=learn/src/main/java #實體類路徑 package.entity=org.gyy.entity.user #mapper路勁 package.mapper=org.gyy.mapper.user
<plugins> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2</version> <configuration> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> </plugin> </plugins>