最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot集成MyBatis的三種方式

 更新時(shí)間:2023年12月29日 09:09:05   作者:程序員 小侯  
Spring Boot與MyBatis的集成為Java開(kāi)發(fā)者提供了一種簡(jiǎn)便而強(qiáng)大的方式來(lái)訪問(wèn)和操作數(shù)據(jù)庫(kù),在本文中,我們將深入解析Spring Boot集成MyBatis的多種方式,文中有詳細(xì)的代碼示例供大家參考,需要的朋友可以參考下

引言

Spring Boot與MyBatis的集成為Java開(kāi)發(fā)者提供了一種簡(jiǎn)便而強(qiáng)大的方式來(lái)訪問(wèn)和操作數(shù)據(jù)庫(kù)。在本文中,我們將深入解析Spring Boot集成MyBatis的多種方式,包括XML配置、注解配置以及使用MyBatis Generator生成代碼的方法。

1. XML配置方式

1.1 添加依賴

首先,我們需要在pom.xml文件中添加MyBatis和數(shù)據(jù)庫(kù)驅(qū)動(dòng)的依賴:

<dependencies>
    <!-- MyBatis -->
    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>2.2.0</version>
    </dependency>

    <!-- 數(shù)據(jù)庫(kù)驅(qū)動(dòng),以MySQL為例 -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.23</version>
    </dependency>
</dependencies>

1.2 配置數(shù)據(jù)源

application.properties中配置數(shù)據(jù)源:

spring.datasource.url=jdbc:mysql://localhost:3306/your_database
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

1.3 創(chuàng)建MyBatis配置文件

src/main/resources目錄下創(chuàng)建mybatis-config.xml文件:

<!-- mybatis-config.xml -->
<configuration>
    <!-- 其他配置 -->
    <mappers>
        <mapper resource="mapper/UserMapper.xml"/>
        <!-- 添加其他Mapper -->
    </mappers>
</configuration>

1.4 編寫Mapper接口和XML文件

創(chuàng)建Mapper接口和對(duì)應(yīng)的XML文件:

// UserMapper.java
public interface UserMapper {
    List<User> getAllUsers();
    // 其他方法
}
<!-- UserMapper.xml -->
<mapper namespace="com.example.mapper.UserMapper">
    <select id="getAllUsers" resultType="com.example.model.User">
        SELECT * FROM users
    </select>
    <!-- 其他SQL語(yǔ)句 -->
</mapper>

1.5 使用Mapper接口

在Service或Controller中注入Mapper并使用:

@Service
public class UserService {
    private final UserMapper userMapper;

    @Autowired
    public UserService(UserMapper userMapper) {
        this.userMapper = userMapper;
    }

    public List<User> getAllUsers() {
        return userMapper.getAllUsers();
    }
    // 其他方法
}

2. 注解配置方式

2.1 添加依賴

同樣,添加MyBatis和數(shù)據(jù)庫(kù)驅(qū)動(dòng)的依賴:

<dependencies>
    <!-- MyBatis -->
    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>2.2.0</version>
    </dependency>

    <!-- 數(shù)據(jù)庫(kù)驅(qū)動(dòng),以MySQL為例 -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.23</version>
    </dependency>
</dependencies>

2.2 配置數(shù)據(jù)源

同XML配置方式。

2.3 使用注解配置Mapper

在Mapper接口上使用@Mapper注解:

@Mapper
public interface UserMapper {
    @Select("SELECT * FROM users")
    List<User> getAllUsers();
    // 其他方法
}

2.4 使用Mapper接口

同XML配置方式。

3. 使用MyBatis Generator

3.1 添加依賴

添加MyBatis Generator插件的依賴:

<build>
    <plugins>
        <plugin>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-maven-plugin</artifactId>
            <version>1.4.0</version>
            <configuration>
                <!-- 配置文件路徑 -->
                <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
                <overwrite>true</overwrite>
            </configuration>
        </plugin>
    </plugins>
</build>

3.2 編寫Generator配置文件

src/main/resources目錄下創(chuàng)建generatorConfig.xml文件:

<!-- generatorConfig.xml -->
<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
    <context id="DB2Tables" targetRuntime="MyBatis3

">
        <commentGenerator>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>

        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/your_database"
                        userId="your_username"
                        password="your_password">
        </jdbcConnection>

        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>

        <javaModelGenerator targetPackage="com.example.model" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>

        <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>

        <javaClientGenerator type="XMLMAPPER" targetPackage="com.example.mapper" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>

        <table tableName="users" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false">
            <property name="useActualColumnNames" value="false"/>
            <generatedKey column="id" sqlStatement="JDBC"/>
        </table>
        <!-- 其他表配置 -->
    </context>
</generatorConfiguration>

3.3 運(yùn)行MyBatis Generator

運(yùn)行Maven命令執(zhí)行MyBatis Generator:

mvn mybatis-generator:generate

以上是三種常見(jiàn)的Spring Boot集成MyBatis的方式,每種方式都有其適用的場(chǎng)景。開(kāi)發(fā)者可以根據(jù)項(xiàng)目需求和個(gè)人偏好選擇最合適的方式。在實(shí)際項(xiàng)目中,可以根據(jù)項(xiàng)目的規(guī)模和復(fù)雜度選擇合適的方式,或者根據(jù)不同的模塊采用不同的集成方式。這樣的靈活性使得Spring Boot與MyBatis的結(jié)合在各種場(chǎng)景下都能夠發(fā)揮強(qiáng)大的作用。

以上就是SpringBoot集成MyBatis的多種方式總結(jié)的詳細(xì)內(nèi)容,更多關(guān)于SpringBoot集成MyBatis的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • java解一個(gè)比較特殊的數(shù)組合并題

    java解一個(gè)比較特殊的數(shù)組合并題

    這篇文章主要介紹了java解一個(gè)比較特殊的數(shù)組合并題,需要的朋友可以參考下
    2014-06-06
  • 解決Java項(xiàng)目中request流只能獲取一次的問(wèn)題

    解決Java項(xiàng)目中request流只能獲取一次的問(wèn)題

    Java項(xiàng)目開(kāi)發(fā)中可能存在以下幾種情況,你需要在攔截器中統(tǒng)一攔截請(qǐng)求和你項(xiàng)目里可能需要搞一個(gè)統(tǒng)一的異常處理器,這兩種情況是比較常見(jiàn)的,本文將給大家介紹如何解決Java項(xiàng)目中request流只能獲取一次的問(wèn)題,需要的朋友可以參考下
    2024-02-02
  • mybatis主從表關(guān)聯(lián)查詢,返回對(duì)象帶有集合屬性解析

    mybatis主從表關(guān)聯(lián)查詢,返回對(duì)象帶有集合屬性解析

    這篇文章主要介紹了mybatis主從表關(guān)聯(lián)查詢,返回對(duì)象帶有集合屬性解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 在SpringBoot中無(wú)縫整合Dubbo的實(shí)現(xiàn)過(guò)程

    在SpringBoot中無(wú)縫整合Dubbo的實(shí)現(xiàn)過(guò)程

    微服務(wù)架構(gòu)已經(jīng)成為現(xiàn)代應(yīng)用開(kāi)發(fā)的熱門趨勢(shì),而Dubbo作為一款強(qiáng)大的分布式服務(wù)框架,與Spring?Boot的結(jié)合是構(gòu)建高性能微服務(wù)應(yīng)用的理想選擇,本文將詳細(xì)介紹如何在SpringBoot中無(wú)縫整合Dubbo,需要的朋友可以參考下
    2024-01-01
  • Java的垃圾強(qiáng)制回收實(shí)例分析

    Java的垃圾強(qiáng)制回收實(shí)例分析

    這篇文章主要介紹了Java的垃圾強(qiáng)制回收,結(jié)合實(shí)例形式分析了java垃圾強(qiáng)制回收的相關(guān)原理及實(shí)現(xiàn)方法,需要的朋友可以參考下
    2019-08-08
  • Java中的HashSet詳解和使用示例_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    Java中的HashSet詳解和使用示例_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    HashSet 是一個(gè)沒(méi)有重復(fù)元素的集合。接下來(lái)通過(guò)實(shí)例代碼給大家介紹java中的hashset相關(guān)知識(shí),感興趣的朋友一起看看吧
    2017-05-05
  • jmeter添加自定函數(shù)的實(shí)例(jmeter5.3+IntelliJ IDEA)

    jmeter添加自定函數(shù)的實(shí)例(jmeter5.3+IntelliJ IDEA)

    這篇文章主要介紹了jmeter添加自定函數(shù)的實(shí)例(jmeter5.3+IntelliJ IDEA),本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • java如何讀取resources目錄和同級(jí)目錄文件

    java如何讀取resources目錄和同級(jí)目錄文件

    介紹了Java中讀取resources目錄和同級(jí)目錄文件的方法,并討論了在IDE和發(fā)布環(huán)境中可能遇到的問(wèn)題,通過(guò)測(cè)試發(fā)現(xiàn),執(zhí)行目錄可能會(huì)影響文件讀取,建議在使用`user.dir`時(shí)注意jar包的運(yùn)行目錄問(wèn)題
    2024-12-12
  • Java轉(zhuǎn)義字符詳細(xì)介紹

    Java轉(zhuǎn)義字符詳細(xì)介紹

    這篇文章主要介紹了Java轉(zhuǎn)義字符的相關(guān)資料,包括換行符、回車符、換頁(yè)符、退格符、空字符、空格、制表符、單引號(hào)、雙引號(hào)、反斜杠以及八進(jìn)制和十六進(jìn)制字符,通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-12-12
  • Java實(shí)現(xiàn)網(wǎng)絡(luò)文件下載以及下載到指定目錄

    Java實(shí)現(xiàn)網(wǎng)絡(luò)文件下載以及下載到指定目錄

    在Spring框架中,StreamUtils和FileCopyUtils兩個(gè)工具類提供了方便的文件下載功能,它們都屬于org.springframework.util包,可以通過(guò)簡(jiǎn)單的方法調(diào)用實(shí)現(xiàn)文件流的復(fù)制和下載,這些工具類支持多種參數(shù)傳遞,涵蓋了文件下載的多種場(chǎng)景
    2024-09-09

最新評(píng)論

岳西县| 合川市| 柘荣县| 萨嘎县| 临城县| 昆明市| 台东市| 连山| 固原市| 新兴县| 满城县| 乌兰察布市| 巴南区| 清水河县| 光山县| 米林县| 广宗县| 浑源县| 榆社县| 徐汇区| 胶州市| 普定县| 凤山县| 西乡县| 巴楚县| 嘉黎县| 淅川县| 沙坪坝区| 色达县| 沾益县| 仁化县| 开江县| 高陵县| 石首市| 信丰县| 通化县| 珲春市| 专栏| 吉隆县| 南澳县| 焉耆|