SpringBoot 整合mybatis、mybatis日志、并测试findAll查询数据库方法

目录

一、创建SpringBoot项目

二、添加mybatis依赖

三、配置mybatis

四、配置mybatis日志

五、开始测试

1.创建一个数据库

2.创建要使用的文件夹和文件

建立完的目录

2.1.创建实体类

2.2.创建mapper接口文件

2.3.创建数据库xml文件

2.4.创建Service接口文件

2.5.创建impl实现类文件

2.6.创建Controller控制层文件

3.启动类加上扫描

六、大功告成,run


一、创建SpringBoot项目

二、添加mybatis依赖

在pom.xml中添加下面的依赖,点击刷新maven

注意:要添加到的标签内部



    org.mybatis.spring.boot
    mybatis-spring-boot-starter
    2.1.1


    mysql
    mysql-connector-java
    runtime

SpringBoot 整合mybatis、mybatis日志、并测试findAll查询数据库方法_第1张图片

三、配置mybatis

在application.yaml中添加下面代码

如果没有这个文件,就去看上一节SpringBoot基础

注意yaml格式严谨,每个缩进都不能改

修改成自己的数据库名称、用户名、密码

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/springboot_mybatis?useUnicode=true&characterEncoding=utf-8&serverTimezone=CTT
    username: root
    password: 123456789
    driver-class-name: com.mysql.cj.jdbc.Driver
mybatis:
  mapper-locations: classpath:mapper/*.xml  #对应mapper映射xml文件所在路径
  type-aliases-package: com.kyw.entity  #对应实体类entity层路径

SpringBoot 整合mybatis、mybatis日志、并测试findAll查询数据库方法_第2张图片

到这里就已经配制好mybatis了,接下来是测试,并完成一个findAll方法

四、配置mybatis日志

在yaml配置文件中配置

顶格添加下面的代码

注意修改成自己mapper层的路径:com.kyw.mapper

logging.level.com.kyw.mapper: debug #mybatis配置日志文件,选择自己的mapper层路径

 说明

debug 是日志层级

日志的级别:

FATAL(致命)>ERROR(错误)>WARN(警告)>INFO(信息)>DEBUG(调试)

从左到右打印的内容越来越详细

五、开始测试

1.创建一个数据库

可以自己创建一个,也可以跟着我来

SpringBoot 整合mybatis、mybatis日志、并测试findAll查询数据库方法_第3张图片

下面数据库sql文件,可以快速创建

/*
 Navicat Premium Data Transfer

 Source Server         : 本地数据库
 Source Server Type    : MySQL
 Source Server Version : 50726
 Source Host           : localhost:3306
 Source Schema         : springboot_mybatis

 Target Server Type    : MySQL
 Target Server Version : 50726
 File Encoding         : 65001

 Date: 24/09/2022 10:31:18
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user`  (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = MyISAM AUTO_INCREMENT = 8 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES (1, '王路飞', 10);
INSERT INTO `user` VALUES (2, '索隆', 10);
INSERT INTO `user` VALUES (3, '111', 111);
INSERT INTO `user` VALUES (4, '111', 111);

SET FOREIGN_KEY_CHECKS = 1;

2.创建要使用的文件夹和文件

文件夹名称问题

不同的团队使用的名称不一样,看自己喜欢那种,这里使用 等号前面的名称

mapper=dao :就是写方法的接口文件,通过它连接 mybatis的xml文件

entity = model :是 实体类

建立完的目录

SpringBoot 整合mybatis、mybatis日志、并测试findAll查询数据库方法_第4张图片

2.1.创建实体类

在com.kyw下创建entity文件夹 在entity下创建Test的实体类

  配置上lombok

这是干嘛的???

lombok是方便我们操作实体类的工具,有了它我们就不需要手动添加 get,set,toString方法了,在类上加一个@Data 注解就OK了。

下面代码加到pom.xml的dependencies标签内部,再刷新maven就行了

        
        
            org.projectlombok
            lombok
            true
        

这里对应数据库里面的字段

package com.kyw.entity;

import lombok.Data;

@Data
public class Test {
    private Long id;
    private String name;
    private int age;


}

2.2.创建mapper接口文件

在com.kyw下创建mapper文件夹,在mapper下创建TestMapper接口文件

package com.kyw.mapper;

import com.kyw.entity.Test;

import java.util.List;

public interface TestMapper {
    //findAll方法
    List findAll();
}

2.3.创建数据库xml文件

在resources下创建mapper文件夹,并创建TestMapper.xml文件

SpringBoot 整合mybatis、mybatis日志、并测试findAll查询数据库方法_第5张图片






    
    
    
        
        
        
        
    
    
    
        id,name,age
    

    
    



2.4.创建Service接口文件

在com.kyw里面创建service文件夹,在service里面创建TestService接口文件

package com.kyw.Service;

import com.kyw.entity.Test;

import java.util.List;

public interface TestService {
    List findAll();
}

2.5.创建impl实现类文件

在service文件夹里面创建impl文件夹,在impl里面创建TestServiceImpl的类文件

并加上@service注解和实现TestService接口,并继承上面的接口

package com.kyw.Service.impl;

import com.kyw.Service.TestService;
import com.kyw.entity.Test;
import com.kyw.mapper.TestMapper;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

@Service
public class TestServiceImpl implements TestService {
    //    @Autowired  Autowired和Resource都可以
    @Resource
    private TestMapper testMapper;
    @Override
    public List findAll() {
        return testMapper.findAll();
    }
}
 

2.6.创建Controller控制层文件

在controller下创建TestController.java文件

package com.kyw.controller;

import com.kyw.Service.TestService;
import com.kyw.entity.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
@RequestMapping("/test")//这是Controller路径
public class TestController {

    @Autowired
    private TestService testService;

    @RequestMapping("/findAll")//这是方法路径
    public List findAll() {
        return testService.findAll();
    }

}
 

3.启动类加上扫描

启动类,也是说引导类

在HelloApplication中加上这个注解

// 启动类扫描mapper层
@MapperScan("com.kyw.mapper")

SpringBoot 整合mybatis、mybatis日志、并测试findAll查询数据库方法_第6张图片

六、大功告成,run

点击启动类的按钮启动

SpringBoot 整合mybatis、mybatis日志、并测试findAll查询数据库方法_第7张图片

 进入浏览器

localhost:8081/test/findAll

 查询成功!

你可能感兴趣的:(SpringBoot,mybatis,spring,boot,java)