mybatisPlus-快速开始

官方参考地址:https://baomidou.com/pages/226c21/

1 创建数据库

新建一个数据库 mybatis_plus ,并在该数据库中运行如下sql来创建一张user表

DROP TABLE IF EXISTS user;

CREATE TABLE user
(
    id BIGINT(20) NOT NULL COMMENT '主键ID',
    name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',
    age INT(11) NULL DEFAULT NULL COMMENT '年龄',
    email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱',
    PRIMARY KEY (id)
);

user表创建成功后,运行如下sql,添加数据

DELETE FROM user;

INSERT INTO user (id, name, age, email) VALUES
(1, 'Jone', 18, 'test1@baomidou.com'),
(2, 'Jack', 20, 'test2@baomidou.com'),
(3, 'Tom', 28, 'test3@baomidou.com'),
(4, 'Sandy', 21, 'test4@baomidou.com'),
(5, 'Billie', 24, 'test5@baomidou.com');

user表创建成功

2 项目初始化

新建一个springboot项目mybatis_plus,创建过程中导入web模块

参考地址:springboot-hello world

3 导入依赖

在pom.xml中除了自动引入的web依赖以外再添加如下依赖,注意:不要同时导入mybatis_plus依赖和mybatis依赖

pom.xml

<!--数据库驱动-->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>
<!--lombok-->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
</dependency>
<!--mybatis-plus-->
<!--mybatis-plus 是自己开发的,并非官方的!-->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.0.5</version>
</dependency>

4 编写配置文件

src/main/resources/application.properties

# mysql 5
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?useSSL=false&useUnicode=true&characterEncoding=utf-8
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

#mysql 8 驱动不同com.mysql.cj.jdbc.Driver,需要增加时区的配置 serverTimezone=GMT%2B8

5 编写实体类

创建pojo包并在该包下新建User实体类

src/main/java/com/lv/mybatis_plus/pojo/User.java

@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

6 编写实体对应的mapper接口

创建mapper包并在该包下新建User实体类对应的mapper接口

src/main/java/com/lv/mybatis_plus/mapper/UserMapper.java

package com.lv.mybatis_plus.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.lv.mybatis_plus.pojo.User;
import org.springframework.stereotype.Repository;

//在对应的Mapper上面 继承基本的类BaseMapper
@Repository //代表持久层
public interface UserMapper extends BaseMapper<User> {
    //所有的CRUD操作都已经编写完成了
    //你不需要像以前一样配置一大堆文件了
}

7 在主启动类上添加注解扫描

src/main/java/com/lv/mybatis_plus/MybatisPlusApplication.java

package com.lv.mybatis_plus;

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

@MapperScan("com.lv.mybatis_plus.mapper") //扫描mapper文件夹
@SpringBootApplication
public class MybatisPlusApplication {
    public static void main(String[] args) {
        SpringApplication.run(MybatisPlusApplication.class, args);
    }
}

8 编写测试类,进行测试

src/test/java/com/lv/mybatis_plus/MybatisPlusApplicationTests.java

package com.lv.mybatis_plus;

import com.lv.mybatis_plus.mapper.UserMapper;
import com.lv.mybatis_plus.pojo.User;
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 MybatisPlusApplicationTests {

    //继承了BaseMapper,所有的方法都来自于父类,我们也可以编写自己的扩展方法
    @Autowired
    private UserMapper userMapper;

    @Test
    void contextLoads() {
        //参数是一个wrapper,条件构造器,这里我们先不用,写为null
        //查询全部用户
        List<User> users = userMapper.selectList(null);
        //输出users里面的每个内容
        users.forEach(System.out::println);
    }
}

9 查看控制台输出

数据查询成功

10 思考

sql谁帮我们写的? mybatis-plus

方法哪里来的? mybatis-plus

posted @ 2022-03-29 14:08  从0开始丿  阅读(74)  评论(0编辑  收藏  举报