02SpringBoot3集成MyBatisPlus和MySQL

Spring Boot:3.2.4

注意: Spring Boot3版本对应的插件基本都会有相匹配的版本,与Spring Boot2的并不一样,安装依赖时需要注意。

一、集成MyBatisPlus

1、安装MyBatisPlus

因为使用了Spring Boot3版本,所以需要使用对应版本的MyBatisPlus;

xml 复制代码
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-spring-boot3-starter</artifactId>
        <version>最新版本</version>
    </dependency>

当前最新为3.5.5

添加依赖之后,点击IDEA的Maven中的【Reload All Maven Projects】按钮;

2、配置MapperScan

首先创建mapper包

配置MapperScan注解

Java 复制代码
package com.one.pojian;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@MapperScan("com.one.pojian.mapper")
public class PojianApplication {
    public static void main(String[] args) {
        SpringApplication.run(PojianApplication.class, args);
    }
}

二、安装MySQL Connector

1、添加依赖

在pom.xml添加该配置即可;

xml 复制代码
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.33</version>
</dependency>

2、添加数据库连接配置

在application.yml文件中添加如下配置

yml 复制代码
    #数据库配置
    spring:
      datasource:
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://localhost:3306/dbname?serverTimezone=Asia/Shanghai
        username: username
        password: password

三、创建表实体

1、数据库建表

sql 复制代码
CREATE TABLE `book` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `name` varchar(100) NOT NULL,
  `author` varchar(100) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

INSERT INTO book (id, name, author) VALUES(1, '人生的枷锁', '毛姆');
INSERT INTO book (id, name, author) VALUES(2, '刀锋', '毛姆');

2、创建实体

创建包/entity/po,在该包下创建实体类Book

java 复制代码
package com.one.pojian.entity.po;

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

@Data
@TableName("book")
public class Book {
    private Long id;
    private String name;
    private String author;
}

实体只需要编码对应的表字段即可,其他的get、set函数只需要引入注解Data即可,该注解需要安装lombok依赖。

3、安装lombok依赖

在pom.xml中添加依赖配置;

xml 复制代码
<!-- lombok:减少样板代码的编写 -->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
</dependency>

四、连接测试

1、编写接口

注意此处是接口,不是类 在mapper包内添加接口BookMapper;

java 复制代码
package com.one.pojian.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.one.pojian.entity.po.Book;

public interface BookMapper extends BaseMapper<Book> {
}

2、添加测试方法

直接在controller中创建方法进行测试;另外,不涉及复杂业务,暂不添加service层; 在controller包内创建类BookController

java 复制代码
    package com.one.pojian.controller;

    import com.one.pojian.entity.po.Book;
    import com.one.pojian.mapper.BookMapper;
    import jakarta.annotation.Resource;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;

    import java.util.List;

    @RestController
    @RequestMapping("/book")
    public class BookController {
        @Resource
        private BookMapper bookMapper;

        @RequestMapping("/getBooks")
        public List<Book> getBooks() {
            return bookMapper.selectList(null);
        }
    }

3、测试返回

五、报错问题

使用注解@Autowired时,会有报错;

解决方案参考:www.cnblogs.com/Howinfun/p/...

相关推荐
昵称为空C2 小时前
SpringBoot3 http接口调用新方式RestClient + @HttpExchange像使用Feign一样调用
spring boot·后端
麦兜*11 小时前
MongoDB Atlas 云数据库实战:从零搭建全球多节点集群
java·数据库·spring boot·mongodb·spring·spring cloud
麦兜*11 小时前
MongoDB 在物联网(IoT)中的应用:海量时序数据处理方案
java·数据库·spring boot·物联网·mongodb·spring
汤姆yu11 小时前
基于springboot的毕业旅游一站式定制系统
spring boot·后端·旅游
计算机毕业设计木哥12 小时前
计算机毕设选题推荐:基于Java+SpringBoot物品租赁管理系统【源码+文档+调试】
java·vue.js·spring boot·mysql·spark·毕业设计·课程设计
hdsoft_huge21 小时前
Java & Spring Boot常见异常全解析:原因、危害、处理与防范
java·开发语言·spring boot
AD钙奶-lalala1 天前
SpringBoot实现WebSocket服务端
spring boot·后端·websocket
毕设源码-朱学姐1 天前
【开题答辩全过程】以 4S店汽车维修保养管理系统为例,包含答辩的问题和答案
java·spring boot·汽车
BXCQ_xuan1 天前
软件工程实践二:Spring Boot 知识回顾
java·spring boot·后端
wuxuanok1 天前
SpringBoot -原理篇
java·spring boot·spring