天天看點

spring boot 整合mybatis-generator

spring boot 整合mybatis-generator

本文參考來自csdn作者:gnail_oug 的文章。

原文:https://blog.csdn.net/gnail_oug/article/details/80404870

版權聲明:轉載請附上博文連結!

開發環境

eclipse

jdk1.8

mysql

maven

  1. 首先在spring boot項目的pom.xml中加入mybatis-generator插件
<dependencies>
	......
</dependencies>
<build>
		<plugins>
			......
			<!--mybatis自動生成代碼插件 -->
			<plugin>
				<groupId>org.mybatis.generator</groupId>
				<artifactId>mybatis-generator-maven-plugin</artifactId>
				<version>1.3.6</version>
				<configuration> 
					<!-- 是否覆寫,true表示會替換生成的JAVA檔案,false則不覆寫 -->
					<overwrite>true</overwrite>
				</configuration>
				<dependencies> 
					<!--mysql驅動包 -->
					<dependency>
						<groupId>mysql</groupId>
						<artifactId>mysql-connector-java</artifactId>
						<version>5.1.45</version>
					</dependency>
				</dependencies>
			</plugin>
		</plugins>
</build>
           
  1. 跟着在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> 

	<!-- defaultModelType="flat" 設定複合主鍵時不單獨為主鍵建立實體 -->
	<context id="MySql" defaultModelType="flat"> 
		
		<!-- 生成的實體類實作java.io.Serializable接口 -->
		<plugin type="org.mybatis.generator.plugins.SerializablePlugin" /> <!--注釋 -->

		<!-- 将資料庫中表的字段描述資訊添加到注釋 -->
		<commentGenerator> 
			<property name="addRemarkComments" value="true" /> <!-- 注釋裡不添加日期 -->
			<property name="suppressDate" value="true" />
		</commentGenerator> 

		<!-- 資料庫連接配接 -->
		<jdbcConnection driverClass="com.mysql.jdbc.Driver"
			connectionURL="jdbc:mysql://localhost:3306/myscheme1" userId="root"
			password="mypasswd1" /> 

		<!-- 生成POJO對象,并将類放到per.ml.mall.entity包下 -->
		<javaModelGenerator
			targetPackage="per.ml.mall.entity"
			targetProject="src/main/java">
		</javaModelGenerator> 

		<!-- 生成mapper xml檔案,并放到resources下的mapper檔案夾下 -->
		<sqlMapGenerator targetPackage="mapper"
			targetProject="src/main/resources">
		</sqlMapGenerator> 
	
		<!-- 生成mapper xml對應dao接口,放到per.ml.mall.mapper包下 -->
		<javaClientGenerator
			targetPackage="per.ml.mall.mapper"
			targetProject="src/main/java" type="XMLMAPPER">
		</javaClientGenerator> 

		<!-- table标簽可以有多個,至少一個,tableName指定表名,可以使用_和%通配符 -->
		<table tableName="ttt_user"> 

			<!-- 是否隻生成實體類對象 -->
			<property name="modelOnly" value="false" /> 
			
			<!-- 資料庫表名有時會帶個字首ttt_user,而實體又不想帶字首,這個配置可以去掉字首(下劃線會轉成駝峰,searchString是按轉換後比對的   例子:表ttt_user > 映射實體類TttUser > 經過本配置轉換 --> User
			<domainObjectRenamingRule searchString="^Ttt" replaceString="" />
		</table>
	</context>
</generatorConfiguration>
           
  1. 最後運作:右擊pom.xml > Run As > Maven Build… > goals填:mybatis-generator:generate (删除profiles的:pom.xml) > Run
    spring boot 整合mybatis-generator
  2. 第一次運作需要等maven下載下傳相應的jar包,然後entity和mapper檔案就生成啦!
    spring boot 整合mybatis-generator