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/...

相关推荐
梁辰兴9 分钟前
企业培训笔记:外卖平台后端--套餐管理模块--新建套餐信息
笔记·vue·mybatis·springboot·外卖管理系统
摇滚侠1 小时前
Spring Boot 3零基础教程,WEB 开发 Thymeleaf 核心语法 笔记39
spring boot·笔记·后端·thymeleaf
九丶弟2 小时前
SpringBoot的cache使用说明
java·spring boot·spring·cache
lang201509283 小时前
打造专属Spring Boot Starter
java·spring boot·后端
信仰_2739932435 小时前
Mybatis-Spring重要组件介绍
java·spring·mybatis
lang201509285 小时前
Spring Boot RSocket:高性能异步通信实战
java·spring boot·后端
蹦跑的蜗牛7 小时前
Spring Boot使用Redis实现消息队列
spring boot·redis·后端
凤山老林8 小时前
SpringBoot 如何实现零拷贝:深度解析零拷贝技术
java·linux·开发语言·arm开发·spring boot·后端
Chan169 小时前
流量安全优化:基于 Nacos 和 BloomFilter 实现动态IP黑名单过滤
java·spring boot·后端·spring·nacos·idea·bloomfilter
YUELEI11810 小时前
Springboot WebSocket
spring boot·后端·websocket