日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

在springboot中使用mybatis generate自动生成实体类和mapper

發(fā)布時(shí)間:2025/3/19 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在springboot中使用mybatis generate自动生成实体类和mapper 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1、在全局的pom中引入mybatis generate的依賴(lài)

<!--自動(dòng)生成實(shí)體--><dependency><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-core</artifactId><version>1.3.5</version></dependency>

2、在全局的pom中加入插件

<plugin><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-maven-plugin</artifactId><version>1.3.5</version><configuration><!--generatorConfig.xml位置--><configurationFile>src/main/resources/mybatis-generator/generatorConfig.xml</configurationFile><verbose>true</verbose><overwrite>true</overwrite></configuration><executions><execution><id>Generate MyBatis Artifacts</id><goals><goal>generate</goal></goals><phase>generate-sources</phase></execution></executions><!--此處必須添加mysql驅(qū)動(dòng)包--><dependencies><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope><version>5.1.46</version></dependency></dependencies></plugin>

3、創(chuàng)建配置文件

以下是我自己的創(chuàng)建配置文件的位置。
可以看到我這個(gè)項(xiàng)目里面有很多個(gè)模塊,但是我為什么放在XApplication這個(gè)模塊中呢,因?yàn)檫@個(gè)模塊是我整個(gè)項(xiàng)目的唯一啟動(dòng)入口,所以才會(huì)在這里進(jìn)行配置。

generatorConfig.xml

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfigurationPUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <!-- 配置生成器 --> <generatorConfiguration><!--執(zhí)行g(shù)enerator插件生成文件的命令: call mvn mybatis-generator:generate -e --><!-- 引入配置文件 --><properties resource="mybatis-generator/mybatisGeneratorinit.properties"/><!--classPathEntry:數(shù)據(jù)庫(kù)的JDBC驅(qū)動(dòng),換成你自己的驅(qū)動(dòng)位置 可選 --><!--<classPathEntry location="E:\mybatis\mysql-connector-java-5.1.24-bin.jar" /> --><!-- 一個(gè)數(shù)據(jù)庫(kù)一個(gè)context --><!--defaultModelType="flat" 大數(shù)據(jù)字段,不分表 --><context id="MysqlTables" targetRuntime="MyBatis3Simple" defaultModelType="flat"><!-- 自動(dòng)識(shí)別數(shù)據(jù)庫(kù)關(guān)鍵字,默認(rèn)false,如果設(shè)置為true,根據(jù)SqlReservedWords中定義的關(guān)鍵字列表;一般保留默認(rèn)值,遇到數(shù)據(jù)庫(kù)關(guān)鍵字(Java關(guān)鍵字),使用columnOverride覆蓋 --><property name="autoDelimitKeywords" value="true" /><!-- 生成的Java文件的編碼 --><property name="javaFileEncoding" value="utf-8" /><!-- beginningDelimiter和endingDelimiter:指明數(shù)據(jù)庫(kù)的用于標(biāo)記數(shù)據(jù)庫(kù)對(duì)象名的符號(hào),比如ORACLE就是雙引號(hào),MYSQL默認(rèn)是`反引號(hào); --><property name="beginningDelimiter" value="`" /><property name="endingDelimiter" value="`" /><!-- 格式化java代碼 --><property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter"/><!-- 格式化XML代碼 --><property name="xmlFormatter" value="org.mybatis.generator.api.dom.DefaultXmlFormatter"/><plugin type="org.mybatis.generator.plugins.SerializablePlugin" /><plugin type="org.mybatis.generator.plugins.ToStringPlugin" /><!-- 注釋 --><commentGenerator ><property name="suppressAllComments" value="false"/><!-- 是否取消注釋 --><property name="suppressDate" value="true" /> <!-- 是否生成注釋代時(shí)間戳--></commentGenerator><!-- jdbc連接 --><jdbcConnection driverClass="${jdbc_driver}" connectionURL="${jdbc_url}" userId="${jdbc_user}" password="${jdbc_password}" /><!-- 類(lèi)型轉(zhuǎn)換 --><javaTypeResolver><!-- 是否使用bigDecimal, false可自動(dòng)轉(zhuǎn)化以下類(lèi)型(Long, Integer, Short, etc.--><property name="forceBigDecimals" value="false"/></javaTypeResolver><!-- 生成實(shí)體類(lèi)地址 --><javaModelGenerator targetPackage="biz.xcj.entity.sys.permit" targetProject="${models}" ><property name="enableSubPackages" value="false"/><property name="trimStrings" value="true"/></javaModelGenerator><!-- 生成mapxml文件 --><sqlMapGenerator targetPackage="biz.xcj.mapper.sys.permit" targetProject="${resources}" ><property name="enableSubPackages" value="false" /></sqlMapGenerator><!-- 生成mapxml對(duì)應(yīng)client,也就是接口dao --><javaClientGenerator targetPackage="biz.xcj.mapper.sys.permit" targetProject="${dao}" type="XMLMAPPER" ><property name="enableSubPackages" value="true" /></javaClientGenerator><!-- table可以有多個(gè),每個(gè)數(shù)據(jù)庫(kù)中的表都可以寫(xiě)一個(gè)table,tableName表示要匹配的數(shù)據(jù)庫(kù)表,也可以在tableName屬性中通過(guò)使用%通配符來(lái)匹配所有數(shù)據(jù)庫(kù)表,只有匹配的表才會(huì)自動(dòng)生成文件 --><!--如果想生成一個(gè)表則tableName="table_name"--><table tableName="text"enableCountByExample="true"enableUpdateByExample="true"enableDeleteByExample="true"enableSelectByExample="true"selectByExampleQueryId="true"><property name="useActualColumnNames" value="false" /><!-- 數(shù)據(jù)庫(kù)表主鍵 --><generatedKey column="uuid" sqlStatement="Mysql" identity="true" /></table></context> </generatorConfiguration>

mybatisGeneratorinit.properties文件

jdbc_driver=com.mysql.jdbc.Driver jdbc_url=jdbc:mysql://localhost:3306/hyqd?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai jdbc_user=root jdbc_password=123456 models=C:\\jinshu\\develop\\projects\\HYQD\\web-user-manager-pojo\\src\\main\\java resources=C:\\jinshu\\develop\\projects\\HYQD\\web-user-manager-pojo\\src\\main\\java dao=C:\\jinshu\\develop\\projects\\HYQD\\web-user-manager-pojo\\src\\main\\java

4、配置文件需要自己配置的內(nèi)容講解

1:數(shù)據(jù)庫(kù)連接配置

mybatisGeneratorinit.properties文件中的所有jdbc配置中,這個(gè)大家應(yīng)該都很熟系了,連接上自己的數(shù)據(jù)庫(kù)即可。

2:實(shí)體類(lèi)生成地址配置

generatorConfig.xml文件中的這個(gè)地方。

<!-- 生成實(shí)體類(lèi)地址 --><javaModelGenerator targetPackage="biz.xcj.entity.sys.permit" targetProject="${models}" ><property name="enableSubPackages" value="false"/><property name="trimStrings" value="true"/></javaModelGenerator>

targetProject="${models}" 引用的就是mybatisGeneratorinit.properties文件中的models的配置。
因?yàn)槲易约菏窍胫苯由稍陧?xiàng)目中,所以我的models配置的路徑就是我自己項(xiàng)目的絕對(duì)路徑。

targetPackage里面的內(nèi)容就是生成實(shí)體類(lèi)的具體位置。因?yàn)槲业?strong>models已經(jīng)配置到j(luò)ava的這個(gè)位置了,所以我的targetPackage只需要配置java后面的路徑就可以了,如圖所示,我java后面的路徑為biz.xcj.entity.sys.permit
總結(jié):配置生成地址,只需要修改targetPackagemodels兩個(gè)參數(shù)即可。

3:mapper層生成地址配置

generatorConfig.xml文件中的這個(gè)地方。

<!-- 生成mapxml文件 --><sqlMapGenerator targetPackage="biz.xcj.mapper.sys.permit" targetProject="${resources}" ><property name="enableSubPackages" value="false" /></sqlMapGenerator><!-- 生成mapxml對(duì)應(yīng)client,也就是接口dao --><javaClientGenerator targetPackage="biz.xcj.mapper.sys.permit" targetProject="${dao}" type="XMLMAPPER" ><property name="enableSubPackages" value="true" /></javaClientGenerator>

這里面配置的內(nèi)容其實(shí)適合實(shí)體類(lèi)的配置一模一樣的,都是同一個(gè)原理。
只需要修改targetPackage的參數(shù)和mybatisGeneratorinit.properties中對(duì)應(yīng)的配置就可以了。

4:配置需要生成的數(shù)據(jù)庫(kù)表

generatorConfig.xml文件中的這個(gè)地方。tableName就表示需要生成的表名稱(chēng)。

<!--如果想生成一個(gè)表則tableName="table_name"--><table tableName="text"enableCountByExample="true"enableUpdateByExample="true"enableDeleteByExample="true"enableSelectByExample="true"selectByExampleQueryId="true"><property name="useActualColumnNames" value="false" /><!-- 數(shù)據(jù)庫(kù)表主鍵 --><generatedKey column="uuid" sqlStatement="Mysql" identity="true" /></table>

4、生成代碼

配置好后,打開(kāi)后面的maven窗口。

因?yàn)槲沂窃赬Application模塊中配置的,所以打開(kāi)的位置路徑是XApplication-Plugins-mybatis-generator,雙擊第一個(gè)mybatis-generator:generate

最后提示SUCCESS則表示自動(dòng)生成成功。

總結(jié)

以上是生活随笔為你收集整理的在springboot中使用mybatis generate自动生成实体类和mapper的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。