1. 程式人生 > 其它 >SpringBoot-Mybatis-Plus配置

SpringBoot-Mybatis-Plus配置

技術標籤:SpringBoot

Mybatis-Plus配置

1.設定pom檔案

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven4.0.0.xsd"
>
<modelVersion>4.0.0</modelVersion> <groupId>com.lxs</groupId> <artifactId>mybatis-plus-demo-quickstart</artifactId> <version>1.0-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <
artifactId
>
spring-boot-starter-parent</artifactId> <version>2.0.0.RELEASE</version> <relativePath/> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding
>
UTF-8</project.reporting.outputEncoding> <java.version>11</java.version> <mybatisplus.version>3.3.2</mybatisplus.version> <skipTests>true</skipTests> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>${mybatisplus.version}</version> </dependency> <dependency> <groupId>org.assertj</groupId> <artifactId>assertj-core</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.2</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>2.1.4.RELEASE</version> <configuration> <fork>true</fork> </configuration> </plugin> </plugins> </build> </project>

2.用JBLSpringBootAppGen外掛生成啟動類和配置檔案

在這裡插入圖片描述

3.開啟日誌及h2資料庫application.yml

#記憶體資料庫
spring:
  datasource:
    driver-class-name: org.h2.Driver
    schema: classpath:db/schema-h2.sql
    data: classpath:db/data-h2.sql
    url: jdbc:h2:mem:test
    username: root
    password: test
#日誌
logging:
  level:
    com.hsp.start: debug

4.相關檔案

  • data-h2.sql
DELETE FROM user;

INSERT INTO user (id, name, age, email) VALUES
(1, 'Jone', 18, '[email protected]'),
(2, 'Jack', 20, '[email protected]'),
(3, 'Tom', 28, '[email protected]'),
(4, 'Sandy', 21, '[email protected]'),
(5, 'Billie', 24, '[email protected]');
  • schema-h2.sql
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)
);

5.實體類

package com.hsp.start.bean;

import lombok.Data;

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

6.dao層

package com.hsp.start.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hsp.start.bean.User;

public interface UserMapper extends BaseMapper<User> {
    
}

7.啟動類新增掃描註解@MapperScan(“com.hsp.start.dao”)

package com.hsp.start;

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

@SpringBootApplication
@MapperScan("com.hsp.start.dao")
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

8.測試

@RunWith(SpringRunner.class)
@SpringBootTest
public class UserMapperTest {
    @Autowired
    private UserMapper userMapper;

    @Test
    public void testSelect() {
        List<User> users = userMapper.selectList(null);
        for (User user : users) {
            System.out.println(user);
        }
    }
}
  • 結果
    2020-12-27 18:39:06.341 DEBUG 8408 — [ main] com.hsp.start.dao.UserMapper.selectList : ==> Preparing: SELECT id,name,age,email FROM user
    2020-12-27 18:39:06.364 DEBUG 8408 — [ main] com.hsp.start.dao.UserMapper.selectList : > Parameters:
    2020-12-27 18:39:06.395 DEBUG 8408 — [ main] com.hsp.start.dao.UserMapper.selectList : <
    Total: 5
    User(id=1, name=Jone, age=18, [email protected])
    User(id=2, name=Jack, age=20, [email protected])
    User(id=3, name=Tom, age=28, [email protected])
    User(id=4, name=Sandy, age=21, [email protected])
    User(id=5, name=Billie, age=24, [email protected])
    9.常用註解
    在這裡插入圖片描述