SpringBoot整合Mybatis-plus

添加依赖

java 复制代码
<dependency>
  <groupId>com.baomidou</groupId>
  <artifactId>mybatis-plus-spring-boot3-starter</artifactId>
  <version>3.5.17</version>
</dependency>

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

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

配置

java 复制代码
server:
  servlet:
    context-path: /api
  port: 8080

# DataSource Config
spring:
  application:
    name: happy-pet-server
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/springbootdemo?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
    username: root
    password: sql102326
  data:
    redis:
      host: localhost
      port: 6379
      password:
      database: 0
      timeout: 5000ms
  servlet:
    multipart:
      max-file-size: 10MB
      max-request-size: 20MB

mybatis-plus:
  mapper-locations: classpath:mapper/**/*.xml

在Spring Boot启动类中添加@MapperScan注解,扫描Mapper文件夹

java 复制代码
@SpringBootApplication
@MapperScan("com.example.springboot.mapper")
public class Application {

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

编码

java 复制代码
package com.example.springboot.entity;

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

@Data
@TableName("`user`")
public class User {
    private Long id;
    private String name;
    private Integer age;
    private String email;
}
java 复制代码
package com.example.springboot.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.springboot.entity.User;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface UserMapper extends BaseMapper<User> {

}

开始使用

java 复制代码
package com.example.springboot;

import com.baomidou.mybatisplus.core.toolkit.Assert;
import com.example.springboot.entity.User;
import com.example.springboot.mapper.UserMapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import java.util.List;

@SpringBootTest
class ApplicationTests {

    @Autowired
    private UserMapper userMapper;

    @Test
    void contextLoads() {
        System.out.println(("----- selectAll method test ------"));
        List<User> userList = userMapper.selectList(null);
        Assert.isTrue(5 == userList.size(), "");
        userList.forEach(System.out::println);
    }
}

控制台输出

java 复制代码
User(id=1, name=Jone, age=18, email=test1@baomidou.com)
User(id=2, name=Jack, age=20, email=test2@baomidou.com)
User(id=3, name=Tom, age=28, email=test3@baomidou.com)
User(id=4, name=Sandy, age=21, email=test4@baomidou.com)
User(id=5, name=Billie, age=24, email=test5@baomidou.com)
相关推荐
掘金者阿豪1 小时前
从Oracle迁到金仓,第一个月踩的最大的坑就是它
前端·后端
aramae1 小时前
C++11:现代C++的里程碑
c语言·开发语言·c++·windows·git·后端
无相求码2 小时前
为什么你的第二个 scanf 还没输入就直接跳过了?C语言输入缓冲区陷阱
c语言·后端
叼馒女友郭芙蓉2 小时前
Function Calling理解
后端
玉宇夕落2 小时前
LangChain RAG Retriever 的学习
后端
用户298698530142 小时前
Python 一键导出 Excel 中的图表和形状为图片
后端·python·excel
用户8130077816372 小时前
PageHelper分页查询步骤
后端
是小李呀2 小时前
MyBatis、MyBatis-Plus 与全自动 ORM 的本质区别
后端
AgCl232 小时前
JavaWeb个人笔记01--Maven到MyBatis
笔记·maven·mybatis