【Maven】mybatis-generator-maven-plugin 使用
阿新 • • 發佈:2019-01-09
http://v7sky.iteye.com/blog/2309246
pom.xml
Java程式碼- <?xml version="1.0" encoding="UTF-8"?>
- <project xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
- <modelVersion>4.0.0</modelVersion>
- <groupId>com.vdian.demo</groupId>
- <artifactId>mybatis</artifactId>
- <version>1.0-SNAPSHOT</version>
- <properties>
- <mybatis.version>3.2.8</mybatis.version>
-
</properties>
- <dependencies>
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>5.1.36</version>
- </dependency>
- <dependency>
-
<groupId>org.mybatis</groupId>
- <artifactId>mybatis</artifactId>
- <version>3.2.8</version>
- </dependency>
- <!--<dependency>-->
- <!--<groupId>org.mybatis.generator</groupId>-->
- <!--<artifactId>mybatis-generator-core</artifactId>-->
- <!--<version>1.3.2</version>-->
- <!--</dependency>-->
- </dependencies>
- <build>
- <plugins>
- <plugin>
- <groupId>org.mybatis.generator</groupId>
- <artifactId>mybatis-generator-maven-plugin</artifactId>
- <version>1.3.2</version>
- <configuration>
- <configurationFile>generatorConfig.xml</configurationFile>
- <verbose>true</verbose>
- <overwrite>true</overwrite>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </project>
genereaorConfig.xml
Java程式碼
- <?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>
- <!-- 資料庫驅動-->
- <classPathEntry location="/Users/hao/.m2/repository/mysql/mysql-connector-java/5.1.36/mysql-connector-java-5.1.36.jar"/>
- <context id="default" targetRuntime="MyBatis3">
- <!-- optional,旨在建立class時,對註釋進行控制 -->
- <commentGenerator>
- <property name="suppressDate" value="true"/>
- <!-- 是否去除自動生成的註釋 true:是 : false:否 -->
- <property name="suppressAllComments" value="true"/>
- </commentGenerator>
- <!--資料庫連結URL,使用者名稱、密碼 -->
- <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://172.0.0.1:3336/em" userId="em" password="em">
- </jdbcConnection>
- <!-- 非必需,型別處理器,在資料庫型別和java型別之間的轉換控制-->
- <javaTypeResolver>
- <property name="forceBigDecimals" value="false"/>
- </javaTypeResolver>
- <!-- 生成模型的包名和位置-->
- <javaModelGenerator targetPackage="com.mybatis.domain" targetProject="src/test/java">
- <!-- optional.是否對model新增 建構函式 -->
- <property name="constructorBased" value="true"/>
- <!-- 是否允許子包,即targetPackage.schemaName.tableName -->
- <property name="enableSubPackages" value="true"/>
- <!-- optional.建立的Model物件是否 不可改變 即生成的Model物件不會有 setter方法,只有構造方法 -->
- <property name="immutable" value="false"/>
- <!-- 是否對類CHAR型別的列的資料進行trim操作 -->
- <property name="trimStrings" value="true"/>
- </javaModelGenerator>
- <!-- 生成對映檔案的包名和位置-->
- <sqlMapGenerator targetPackage="com.mybatis.mapping" targetProject="src/test/java">
- <property name="enableSubPackages" value="true"/>
- </sqlMapGenerator>
- <!-- 生成DAO的包名和位置
- type="ANNOTATEDMAPPER",生成Java Model 和基於註解的Mapper物件
- type="MIXEDMAPPER",生成基於註解的Java Model 和相應的Mapper物件
- type="XMLMAPPER",生成SQLMap XML檔案和獨立的Mapper介面 -->
- <javaClientGenerator type="MIXEDMAPPER" targetPackage="com.mybatis.dao" targetProject="src/test/java">
- <property name="enableSubPackages" value="true"/>
- </javaClientGenerator>
- <!-- 要生成的表 tableName是資料庫中的表名或檢視名 domainObjectName是實體類名-->
- <table tableName="push_log" domainObjectName="PushDO"
- enableCountByExample="false"
- enableUpdateByExample="false"
- enableDeleteByExample="false"
- enableSelectByExample="false"
- selectByExampleQueryId="false">
- <!-- optional.插入時,是否生成selectKey元素 -->
- <!--<generatedKey column="id" sqlStatement="SELECT LAST_INSERT_ID()" identity="true" type="post"/>-->
- <!-- optional.忽略某一列 -->
- <ignoreColumn column="gmt_create" delimitedColumnName="true" />
- <!--optional.覆蓋Model的生成規則,主要是設定javaType -->
- <columnOverride column="id" javaType="java.lang.Long" jdbcType="INTEGER" typeHandler="" delimitedColumnName="" />
- </table>
- </context>
- </generatorConfiguration>
push_log:
Java程式碼
- CREATE TABLE `push_log` (
- `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id主鍵',
- `operator` varchar(255) DEFAULT NULL COMMENT '操作人名稱',
- `page_id` varchar(255) DEFAULT NULL COMMENT '訊息id',
- `push_title` varchar(255) DEFAULT NULL COMMENT '訊息title',
- `push_description` varchar(255) DEFAULT NULL COMMENT '訊息描述',
- `gmt_create` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '建立時間',
- `push_target_id` varchar(255) DEFAULT NULL COMMENT '接收人id',
- PRIMARY KEY (`id`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8
命令列:mvn mybatis-generator:generate