springboot在eclipse中使用mybatis-generator自動生成代碼

1、pom.xml 添加maven件

 

			<!--mybatis自動生成代碼插件 -->
			<plugin>
				<groupId>org.mybatis.generator</groupId>
				<artifactId>mybatis-generator-maven-plugin</artifactId>
				<version>1.3.6</version>
				<configuration>
				<!--指定配置文件的名稱。默認值:${basedir}/src/main/resources/generatorConfig.xml-->
                    <configurationFile>${basedir}/src/main/resources/generatorConfig.xml</configurationFile>
					<!-- 重複生成時會覆蓋之前的文件-->
					<overwrite>true</overwrite>
					<!-- 在控制檯打印執行日誌 -->
                    <verbose>true</verbose>
				</configuration>
				<dependencies>
					<!--mysql驅動包 -->
					<dependency>
						<groupId>mysql</groupId>
						<artifactId>mysql-connector-java</artifactId>
						<version>8.0.15</version>
					</dependency>
				</dependencies>
			</plugin>

2、src/main/resources目錄下新建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>
	<!-- 導入配置文件 -->
	<properties resource="application.properties" />

	<!-- generatorConfig.xml裏面context節點的子節點必須按順序配置,不然會報錯 -->

	<!-- defaultModelType="flat" 設置複合主鍵時不單獨爲主鍵創建實體 -->
	<context id="default" defaultModelType="flat" targetRuntime="MyBatis3">

		<!-- 生成的POJO實現java.io.Serializable接口 -->
		<plugin type="org.mybatis.generator.plugins.SerializablePlugin" />

		<!--註釋 -->
		<commentGenerator>
			<!-- 將數據庫中表的字段描述信息添加到註釋 -->
			<property name="addRemarkComments" value="true" />
			<!-- 註釋裏不添加日期 -->
			<property name="suppressDate" value="true" />
			<!-- 是否去除自動生成的註釋 true:是 : false:否 -->
			<property name="suppressAllComments" value="true" />
		</commentGenerator>

		<!-- 數據庫連接,直接通過${}讀取application.properties裏的配置 -->
		<jdbcConnection driverClass="${spring.datasource.driver-class-name}" 
						connectionURL="${spring.datasource.url}" 
						userId="${spring.datasource.username}" 
						password="${spring.datasource.password}">
			<!-- 如果數據庫是MySQL 8.x 自定義的表與系統表有同名時,會自動生產兩張表的對應代碼,而且會有很多衝突和錯誤,此時設置table的schema也沒有效果,需要在連接節點裏面添加nullCatalogMeansCurrent屬性 -->
			<property name="nullCatalogMeansCurrent" value="true" />
		</jdbcConnection>

		<!-- 生成POJO對象,並將類放到com.graduationdesign.pojo包下 -->
		<javaModelGenerator targetPackage="com.graduationdesign.pojo" targetProject="src/main/java"></javaModelGenerator>

		<!-- 生成mapper xml文件,並放到resources下的mapper文件夾下 -->
		<sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"></sqlMapGenerator>

		<!-- 生成mapper xml對應dao接口,放到com.graduationdesign.mapper包下 -->
		<javaClientGenerator targetPackage="com.graduationdesign.mapper" targetProject="src/main/java" type="XMLMAPPER"></javaClientGenerator>

		<!-- table標籤可以有多個,至少一個,tableName指定表名,可以使用_和%通配符 -->
		<table tableName="test">
			<!-- 是否只生成POJO對象 -->
			<property name="modelOnly" value="false" />
			<!-- 數據庫中表名有前綴,而實體又不想帶前綴,這個配置可以把實體的前綴去掉 -->
			<!-- <domainObjectRenamingRule searchString="^sys" replaceString=""/> -->
		</table>
	</context>
</generatorConfiguration>

 

3、運行

右擊 項目 Run As ---> Maven build...

在Goals:mybatis-generator:generate -e

最後點擊 Run

 

 

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