如何启用 MyBatis 的 log 日志?一步步教你实现!

时间:2024-10-30 18:56:45

MyBatis-Plus 启动 MyBatis 本身的 log 日志

引言

在使用 MyBatis 时,我们经常需要查看 SQL 语句执行时的 log 日志,以便于调试和优化。MyBatis-Plus 是一个强大的 MyBatis 增强工具,提供了很多方便的功能,但默认情况下不会输出 SQL 语句的 log 日志。本文将介绍如何使用 MyBatis-Plus 启动 MyBatis 本身的 log 日志,并详细列出了实现的步骤和相关的代码片段。

步骤一:添加相关依赖

首先,我们需要添加 MyBatis-Plus 和相关的依赖到项目的 文件中。

<dependency>
    <groupId></groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.4.0</version>
</dependency>
<dependency>
    <groupId>.log4j</groupId>
    <artifactId>log4j-slf4j-impl</artifactId>
</dependency>
<dependency>
    <groupId>.log4j</groupId>
    <artifactId>log4j-core</artifactId>
</dependency>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

步骤二:配置 log4j2

在 src/main/resources 目录下创建 文件,并添加以下内容:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%p] %m%n"/>
        </Console>
    </Appenders>
    <Loggers>
        <Root level="debug">
            <AppenderRef ref="Console"/>
        </Root>
    </Loggers>
</Configuration>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

步骤三:启用 MyBatis 的 log 日志

在 Spring Boot 的配置文件 或 中添加以下配置:

# 开启 MyBatis 的 log 日志
=DEBUG
  • 1
  • 2

步骤四:编写示例代码

接下来,我们来编写一个简单的示例代码来演示如何启用 MyBatis 的 log 日志。

package com.example.demo.mapper;

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

@Mapper
public interface UserMapper extends BaseMapper<User> {
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
package com.example.demo.service;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.example.demo.entity.User;
import com.example.demo.mapper.UserMapper;
import org.springframework.stereotype.Service;

@Service
public class UserService extends ServiceImpl<UserMapper, User> {
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
package com.example.demo;

import com.example.demo.entity.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {

    @Autowired
    private UserService userService;

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

    public void example() {
        User user = new User();
        user.setName("Tom");
        user.setAge(20);
        userService.save(user);
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

总结

通过以上步骤,我们成功启动了 MyBatis 本身的 log 日志。在实际开发中,可以根据需要设置 log 的级别和输出方式,以便更好地调试和优化 SQL 语句的执行。