欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring Boot整合MyBatis-Flex全過程

 更新時間:2024年08月05日 09:12:11   作者:何中應  
這篇文章主要介紹了Spring Boot整合MyBatis-Flex全過程,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

說明:MyBatis-Flex(官網地址:https://mybatis-flex.com/),是一款數據訪問層框架,可實現(xiàn)項目中對數據庫的訪問,類比MyBatis-Plus。

本文介紹,在Spring Boot項目整合MyBatis-Flex。

創(chuàng)建項目

首先,創(chuàng)建一個Spring boot項目,pom.xml文件內容如下

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.12</version>
        <relativePath/>
    </parent>

    <groupId>com.hezy</groupId>
    <artifactId>mybatis-flex-demo</artifactId>
    <version>1.0-SNAPSHOT</version>
    <name>Archetype - mybatis-flex-demo</name>
    <url>http://maven.apache.org</url>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>

        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.2.8</version>
        </dependency>

        <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <version>42.7.1</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
    </dependencies>

</project>

創(chuàng)建一個實體類對象,User,如下:

import lombok.Data;

import java.io.Serializable;

@Data
public class User implements Serializable {

    private static final long serialVersionUID = 1L;
    
    private Long id;
    
    private String username;

    private String password;
}

創(chuàng)建一個接口,如下:

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class UserController {

    @GetMapping("/hello")
    public String hello() {
        return "hello";
    }
}

application.yml,配置文件如下:

server:
  port: 8080

spring:
  datasource:
    driver-class-name: org.postgresql.Driver
    url: jdbc:postgresql://localhost:5432/demo
    username: postgres
    password: 123456

啟動項目,測試,沒得問題

整合MyBatis-Flex

引入下面這兩個依賴;

	<dependency>
	    <groupId>com.mybatis-flex</groupId>
	    <artifactId>mybatis-flex-spring-boot-starter</artifactId>
	    <version>1.9.3</version>
	</dependency>
	<dependency>
	    <groupId>com.mybatis-flex</groupId>
	    <artifactId>mybatis-flex-processor</artifactId>
	    <version>1.9.3</version>
	    <scope>provided</scope>
	</dependency>

在實體類上關聯(lián)表,包括實體類對應的表名,以及對應的字段,像主鍵、別名(如果有)等;

import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.Table;
import lombok.Data;

import java.io.Serializable;

@Data
@Table("tb_user")
public class User implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    private Long id;

    private String username;

    private String password;
}

創(chuàng)建數據訪問層對象,可繼承MyBatis-Flex提供的接口,并指定泛型為當前操作的實體類對象

import com.hezy.pojo.User;
import com.mybatisflex.core.BaseMapper;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface UserMapper extends BaseMapper<User> {
}

創(chuàng)建一個接口,根據ID查詢User,可直接調用MyBatis-Flex提供的相關API,如下:

    @Autowired
    private UserMapper userMapper;
    
    @GetMapping("/getUser/{id}")
    public User getUserById(@PathVariable("id") Integer id) {
        return userMapper.selectOneById(id);
    }

一般來說,還需要Services過一層,校驗參數等,這里是是一個Demo。數據庫內容如下:

啟動項目,調用接口,如下,查詢完成

總結

本文介紹了如何在Spring Boot項目中整合MyBatis-Flex,當然,MyBatis-Flex還提供了許多數據訪問的API,以及擴展功能,如多數據源訪問、數據庫配置加密、多租戶、讀寫分離等等,可在官網上學習。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Struts2 控制文件上傳下載功能實例代碼

    Struts2 控制文件上傳下載功能實例代碼

    這篇文章主要介紹了Struts2 控制文件上傳下載功能實例代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-05-05
  • 如何解決java.util.concurrent.CancellationException問題

    如何解決java.util.concurrent.CancellationException問題

    這篇文章主要介紹了如何解決java.util.concurrent.CancellationException問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • nacos gateway動態(tài)路由實戰(zhàn)

    nacos gateway動態(tài)路由實戰(zhàn)

    這篇文章主要介紹了nacos gateway動態(tài)路由實戰(zhàn),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java中Map和Set的常見用法舉例

    Java中Map和Set的常見用法舉例

    Map和Set是一種專門用來進行搜索的容器或者數據結構,其具體效率與具體的實例化子類有關,下面這篇文章主要給大家介紹了關于Java中Map和Set的常見用法,需要的朋友可以參考下
    2024-04-04
  • ZooKeeper官方文檔之Java客戶端開發(fā)案例翻譯

    ZooKeeper官方文檔之Java客戶端開發(fā)案例翻譯

    網上有很多ZooKeeper的java客戶端例子,我也看過很多,不過大部分寫的都不好,有各種問題。兜兜轉轉還是覺得官方給的例子最為經典,在學習之余翻譯下來,供朋友們參考
    2022-01-01
  • springBoot 插件工具熱部署 Devtools的步驟詳解

    springBoot 插件工具熱部署 Devtools的步驟詳解

    這篇文章主要介紹了springBoot 插件工具 熱部署 Devtools,本文分步驟給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • 深入理解java重載和重寫

    深入理解java重載和重寫

    這篇文章主要介紹了Java方法重載和重寫原理區(qū)別解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2021-07-07
  • Java基礎之方法重寫詳解

    Java基礎之方法重寫詳解

    這篇文章主要介紹了Java基礎之方法重寫詳解,文中有非常詳細的代碼示例,對正在學習java的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-05-05
  • Java泛型可行與不可行的原理示例解析

    Java泛型可行與不可行的原理示例解析

    這篇文章主要為大家介紹了Java泛型可行與不可行的原理示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加
    2023-05-05
  • java實現(xiàn)線程阻塞式方法

    java實現(xiàn)線程阻塞式方法

    Java阻塞式方法會使線程暫停執(zhí)行,不占用CPU資源直至條件滿足,常見阻塞方法如Thread.sleep()、Object.wait()和I/O操作,具有一定的參考價值,感興趣的可以了解一下
    2024-10-10

最新評論