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

相关推荐
JH30734 小时前
SpringBoot 优雅处理金额格式化:拦截器+自定义注解方案
java·spring boot·spring
qq_12498707537 小时前
基于SSM的动物保护系统的设计与实现(源码+论文+部署+安装)
java·数据库·spring boot·毕业设计·ssm·计算机毕业设计
Coder_Boy_8 小时前
基于SpringAI的在线考试系统-考试系统开发流程案例
java·数据库·人工智能·spring boot·后端
2301_818732068 小时前
前端调用控制层接口,进不去,报错415,类型不匹配
java·spring boot·spring·tomcat·intellij-idea
汤姆yu11 小时前
基于springboot的尿毒症健康管理系统
java·spring boot·后端
暮色妖娆丶11 小时前
Spring 源码分析 单例 Bean 的创建过程
spring boot·后端·spring
biyezuopinvip12 小时前
基于Spring Boot的企业网盘的设计与实现(任务书)
java·spring boot·后端·vue·ssm·任务书·企业网盘的设计与实现
JavaGuide13 小时前
一款悄然崛起的国产规则引擎,让业务编排效率提升 10 倍!
java·spring boot
figo10tf13 小时前
Spring Boot项目集成Redisson 原始依赖与 Spring Boot Starter 的流程
java·spring boot·后端
zhangyi_viva13 小时前
Spring Boot(七):Swagger 接口文档
java·spring boot·后端