springboot集成Mybatis的詳細(xì)教程
springboot集成Mybatis
第一步:
添加Mybatis依賴(lài)
<!--mybatis整合springboot框架的起步依賴(lài)-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>
第二步:
添加mysql驅(qū)動(dòng)
之所以沒(méi)有版本號(hào),因?yàn)樗^承的是父工程的。當(dāng)然你也可以自己指定一個(gè)版本號(hào)
<!--添加mysql驅(qū)動(dòng)-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<!-- 指定版本號(hào) <version>5.1.9<version> -->
</dependency>

使用Mybatis提供的逆向工程 生成實(shí)體bean,映射文件,DAO接口
第一步:
在項(xiàng)目根目錄創(chuàng)建 GeneratorMapper.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>
<!--指向連接數(shù)據(jù)庫(kù)的 JDBC 驅(qū)動(dòng)包所在位置,指定到你本機(jī)的完整路徑-->
<classPathEntry location="D:\biancheng_files\mysql_connect_java\mysql-connector-java-5.1.38.jar"/>
<!--配置table表信息內(nèi)容體,targetRuntime 指定采用MyBatis3的版本-->
<context id="tables" targetRuntime="MyBatis3">
<commentGenerator>
<property name="suppressAllComments" value="true"/>
</commentGenerator>
<!--配置數(shù)據(jù)庫(kù)連接信息-->
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://127.0.0.1:3306/spring?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false"
userId="root"
password="lvxingchen">
</jdbcConnection>
<!--生成Model類(lèi),targetPackage指定model類(lèi)的包名,
targetProject指定生成的model類(lèi)放在eclipse的哪個(gè)工程下邊、-->
<javaModelGenerator targetPackage="com.lxc.boot_02.model"
targetProject="src/main/java">
<property name="enableSubPackages" value="false"/>
<property name="trimStrings" value="false"/>
</javaModelGenerator>
<!--生成Mybatis的Mapper.xml 文件,targetPackage指定mapper.xml文件的包名,
targetProject指定生成的mapper.xml放在eclipse的哪個(gè)工程下邊-->
<sqlMapGenerator targetPackage="com.lxc.boot_02.mapper"
targetProject="src/main/java">
<property name="enableSubPackages" value="false"/>
</sqlMapGenerator>
<!--生成Mybatis的Mapper接口類(lèi)文件,targetPackage指定Mapper接口類(lèi)的包名,
targetProject指定生成的Mapper接口放在eclipse的哪個(gè)工程下邊-->
<javaClientGenerator type="XMLMAPPER"
targetPackage="com.lxc.boot_02.mapper"
targetProject="src/main/java">
<property name="enableSubPackages" value="false"/>
</javaClientGenerator>
<!--數(shù)據(jù)庫(kù)表名及對(duì)應(yīng)的Java模型類(lèi)名
有100張表,就需要指定100個(gè)table
tableName:數(shù)據(jù)庫(kù)中表的名字;
domainObjectName:表對(duì)應(yīng)生成的實(shí)體類(lèi)的名字叫什么
-->
<table tableName="user" domainObjectName="User"
enableCountByExample="false"
enableUpdateByExample="false"
enableDeleteByExample="false"
enableSelectByExample="false"
selectByExampleQueryId="false"/>
</context>
</generatorConfiguration>
第二步
在pom.xml中配置如下:
<!--在plugins標(biāo)簽中,添加如下代碼-->
<!--mybatis 代碼自動(dòng)生成插件-->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.7</version>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.15</version>
</dependency>
</dependencies>
<configuration>
<!--配置文件的位置-->
<configurationFile>GeneratorMapper.xml</configurationFile>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
</plugin>
第三步
雙擊如下執(zhí)行時(shí),

這里有一個(gè)坑,我的在這里報(bào)錯(cuò)了,報(bào)錯(cuò)信息如下:
Failed to execute goal org.mybatis.generator:mybatis-generator-maven-plugin:1.3.7:generate (default-cli) on project sprint_boot_01: Communications link failure

百分之99是驅(qū)動(dòng)和配置數(shù)據(jù)庫(kù)信息中的connectionURL配置錯(cuò)了,我的解決方案:
driverClass="com.mysql.cj.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1:3306/java_pro?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=false"
然后在雙擊執(zhí)行,成功:

生成的目錄如下:

到此這篇關(guān)于springboot集成Mybatis的詳細(xì)教程的文章就介紹到這了,更多相關(guān)springboot集成Mybatis內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
以Java?Web項(xiàng)目為例淺談前后端分離開(kāi)發(fā)模式
這篇文章主要介紹了以Java?Web項(xiàng)目為例淺談前后端分離開(kāi)發(fā)模式,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08
郵件收發(fā)原理你了解嗎? 郵件發(fā)送基本過(guò)程與概念詳解(一)
你真的了解郵件收發(fā)原理嗎?這篇文章主要為大家詳細(xì)介紹了郵件發(fā)送基本過(guò)程與概念,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10
解決微服務(wù)下Mybatis?xml無(wú)效綁定問(wèn)題及分析Invalid?bound?statement
這篇文章主要介紹了解決微服務(wù)下Mybatis?xml無(wú)效綁定問(wèn)題及分析Invalid?bound?statement,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11
Spring File Storage文件的對(duì)象存儲(chǔ)框架基本使用小結(jié)
在開(kāi)發(fā)過(guò)程當(dāng)中,會(huì)使用到存文檔、圖片、視頻、音頻等等,這些都會(huì)涉及存儲(chǔ)的問(wèn)題,文件可以直接存服務(wù)器,但需要考慮帶寬和存儲(chǔ)空間,另外一種方式就是使用云存儲(chǔ),這篇文章主要介紹了Spring File Storage文件的對(duì)象存儲(chǔ)框架基本使用小結(jié),需要的朋友可以參考下2024-08-08
通過(guò)實(shí)例解析spring bean之間的關(guān)系
這篇文章主要介紹了通過(guò)實(shí)例解析spring bean之間的關(guān)系,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-01-01
SpringBoot無(wú)法使用jkd8問(wèn)題的解決方法
這篇文章主要介紹了SpringBoot無(wú)法使用jkd8問(wèn)題的解決方法,文中通過(guò)圖文結(jié)合的形式給大家講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-12-12

