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

Mybatis plus結(jié)合springboot使用

 更新時間:2024年11月25日 10:15:31   作者:wx661607c93692e  
本文主要介紹了MyBatisPlus使用SpringBoot數(shù)據(jù)庫操作,從添加依賴到測試,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

使用 MyBatis Plus 結(jié)合 Spring Boot 可以極大地簡化數(shù)據(jù)庫操作。MyBatis Plus 是 MyBatis 的增強(qiáng)工具,旨在簡化開發(fā)、提高效率。

1. 添加依賴

首先,在 pom.xml 文件中添加 MyBatis Plus 和 Spring Boot 的相關(guān)依賴。

<dependencies>
    <!-- Spring Boot Starter Web -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <!-- Spring Boot Starter Data JPA -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>

    <!-- MyBatis Plus -->
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>3.4.3</version>
    </dependency>

    <!-- MySQL Connector -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.23</version>
    </dependency>

    <!-- Lombok for getter/setter/toString/etc. -->
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.20</version>
        <scope>provided</scope>
    </dependency>

    <!-- Spring Boot Starter Test -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>

2. 配置數(shù)據(jù)庫連接

在 application.properties 或 application.yml 文件中配置數(shù)據(jù)庫連接信息。

application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/your_database?useSSL=false&serverTimezone=UTC
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

# MyBatis Plus 配置
mybatis-plus.mapper-locations=classpath*:mapper/*.xml
mybatis-plus.type-aliases-package=com.yourpackage.entity

application.yml
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/your_database?useSSL=false&serverTimezone=UTC
    username: your_username
    password: your_password
    driver-class-name: com.mysql.cj.jdbc.Driver

# MyBatis Plus 配置
mybatis-plus:
  mapper-locations: classpath*:mapper/*.xml
  type-aliases-package: com.yourpackage.entity

3. 創(chuàng)建實(shí)體類

使用 Lombok 注解來減少樣板代碼。

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

@Data
@TableName("user")
public class User {
    @TableId
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

4. 創(chuàng)建 Mapper 接口

繼承 BaseMapper 接口,MyBatis Plus 提供了許多便捷的方法。

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;

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

5. 創(chuàng)建 Service 層

創(chuàng)建服務(wù)層來處理業(yè)務(wù)邏輯。

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;

@Service
public class UserService extends ServiceImpl<UserMapper, User> {
    // 可以添加自定義的業(yè)務(wù)方法
}

6. 創(chuàng)建 Controller 層

創(chuàng)建控制器層來處理 HTTP 請求。

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/users")
public class UserController {

    @Autowired
    private UserService userService;

    @GetMapping
    public List<User> getAllUsers() {
        return userService.list();
    }

    @GetMapping("/{id}")
    public User getUserById(@PathVariable Long id) {
        return userService.getById(id);
    }

    @PostMapping
    public boolean addUser(@RequestBody User user) {
        return userService.save(user);
    }

    @PutMapping("/{id}")
    public boolean updateUser(@PathVariable Long id, @RequestBody User user) {
        user.setId(id);
        return userService.updateById(user);
    }

    @DeleteMapping("/{id}")
    public boolean deleteUser(@PathVariable Long id) {
        return userService.removeById(id);
    }
}

7. 啟動類

確保啟動類位于正確的包路徑下,以便 Spring Boot 自動掃描到所有組件。

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

8. 測試

啟動應(yīng)用并測試各個接口是否正常工作。

mvn spring-boot:run

快捷方式和最佳實(shí)踐

  • Lombok:使用 Lombok 可以大大減少樣板代碼,如 getter、setter、toString 等。
  • 全局異常處理:使用 @ControllerAdvice 注解創(chuàng)建全局異常處理器,統(tǒng)一處理異常。
  • 分頁查詢:MyBatis Plus 提供了內(nèi)置的分頁支持,使用 Page 對象即可輕松實(shí)現(xiàn)分頁查詢。
  • 事務(wù)管理:使用 @Transactional 注解管理事務(wù),確保數(shù)據(jù)的一致性和完整性。
  • 日志記錄:使用 logback 或 log4j2 配置日志記錄,方便調(diào)試和監(jiān)控。

到此這篇關(guān)于Mybatis plus結(jié)合springboot使用的文章就介紹到這了,更多相關(guān)Mybatis plus結(jié)合springboot內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • springboot項目打成jar包后無法獲取static下的靜態(tài)資源文件的問題分析

    springboot項目打成jar包后無法獲取static下的靜態(tài)資源文件的問題分析

    這篇文章主要介紹了springboot項目打成jar包后無法獲取static下的靜態(tài)資源文件的問題分析,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • JWT概述以及Token刷新機(jī)制詳解

    JWT概述以及Token刷新機(jī)制詳解

    這篇文章主要介紹了JWT概述以及Token刷新機(jī)制,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • Java并發(fā)編程總結(jié)——慎用CAS詳解

    Java并發(fā)編程總結(jié)——慎用CAS詳解

    下面小編就為大家?guī)硪黄狫ava并發(fā)編程總結(jié)——慎用CAS詳解。小編覺得挺不錯的, 現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • 深入解析Java的設(shè)計模式編程中的模板方法模式

    深入解析Java的設(shè)計模式編程中的模板方法模式

    這篇文章主要介紹了深入解析Java的設(shè)計模式編程中的模板方法模式, 模版方法模式由一個抽象類和一個(或一組)實(shí)現(xiàn)類通過繼承結(jié)構(gòu)組成,需要的朋友可以參考下
    2016-02-02
  • 關(guān)閉支付寶小額免密支付步驟詳解

    關(guān)閉支付寶小額免密支付步驟詳解

    支付寶現(xiàn)在作為我們?nèi)粘I钪凶畛S玫膽?yīng)用之一,已經(jīng)成為了人們的虛擬錢包。但是最近,有人發(fā)現(xiàn)了支付寶的一個漏洞,本文將對如何關(guān)閉小額免密支付進(jìn)行步驟介紹。下面跟著小編一起來看下吧
    2017-01-01
  • Spring中自定義攔截器的使用

    Spring中自定義攔截器的使用

    大家好,本篇文章主要講的是Spring中自定義攔截器的使用,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-02-02
  • Java8新特性Stream短路終端操作實(shí)例解析

    Java8新特性Stream短路終端操作實(shí)例解析

    這篇文章主要介紹了Java8新特性Stream短路終端操作實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-12-12
  • mybatis查詢語句揭秘之參數(shù)解析

    mybatis查詢語句揭秘之參數(shù)解析

    這篇文章主要給大家介紹了關(guān)于mybatis查詢語句之參數(shù)解析的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用mybatis具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • SpringBoot項目中使用@Scheduled讀取動態(tài)參數(shù)

    SpringBoot項目中使用@Scheduled讀取動態(tài)參數(shù)

    這篇文章主要介紹了SpringBoot項目中使用@Scheduled讀取動態(tài)參數(shù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • netty-grpc一次DirectByteBuffer內(nèi)存泄露問題

    netty-grpc一次DirectByteBuffer內(nèi)存泄露問題

    這篇文章主要介紹了netty-grpc一次DirectByteBuffer內(nèi)存泄露問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12

最新評論