Mybatis plus+spring+boot第一章
一、创建spring boot项目,引入依赖,引入lombock依赖, mysql-connector-java mybatis-plus-boot-starter junit spring-test 依赖
<?xml version="1.0" encoding="UTF-8"?>4.0.0 org.springframework.boot spring-boot-starter-parent 2.6.4 com.yinminneng mybatisplus01 0.0.1-SNAPSHOT mybatisplus01 Demo project for Spring Boot 1.8 org.springframework.boot spring-boot-starter org.projectlombok lombok true com.baomidou mybatis-plus-boot-starter 3.5.1 mysql mysql-connector-java runtime org.springframework.boot spring-boot-starter-test test org.springframework.boot spring-boot-test junit junit junit junit org.springframework spring-test org.springframework.boot spring-boot-maven-plugin org.projectlombok lombok
二、创建数据库表和数据库数据
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)
);
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');
三、创建配置文件,application.yml,删除application.properties
# DataSource Config
server:
port: 8099
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/mybatisdb?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&nullCatalogMeansCurrent=true
username: root
password: root123
四、创建实体类,user,项目结构如下
package com.yinminneng.mybatisplus01.entities;
import lombok.Data;
@Data
public class User {
private Long id;
private String name;
private Integer age;
private String email;
}
五、创建userMapper类,继承basemapper
package com.yinminneng.mybatisplus01.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.yinminneng.mybatisplus01.entities.User; import org.springframework.stereotype.Component; public interface UserMapper extends BaseMapper{ }
六、配置mapper扫描包,注解MapperScan
package com.yinminneng.mybatisplus01;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@MapperScan("com.yinminneng.mybatisplus01.mapper")
public class Mybatisplus01Application {
public static void main(String[] args) {
SpringApplication.run(Mybatisplus01Application.class, args);
}
}
七、添加测试类,测试
package com.yinminneng.mybatisplus01.tests;
import com.yinminneng.mybatisplus01.entities.User;
import com.yinminneng.mybatisplus01.mapper.UserMapper;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.List;
//单元测试要加runwith,否则无法自动注入
@SpringBootTest
@RunWith(SpringRunner.class)
public class SampleTest {
@Autowired
private UserMapper userMapper;
@Test
public void select(){
List list = userMapper.selectList(null);
//junit测试单元有的
Assert.assertEquals(5,list.size());
list.forEach(System.out::println);
}
}