MyBatis-Plus使用sl4j日志打印SQL的代码详解

 更新时间:2024年10月18日 10:35:32   作者:漫漫求  
以下是关于使用 Spring Boot 起始器替换 slf4j-api 和 logback 依赖的详细步骤和注意事项,包括 MyBatis-Plus 的默认日志级别信息,需要的朋友可以参考下

1、依赖项配置

在 pom.xml 中添加以下依赖项:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
</dependency>

<!-- MyBatis-Plus Starter -->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>最新版本</version> <!-- 请根据需要替换为最新版本 -->
</dependency>

<!-- Spring Boot Starter Logging (已包含 SLF4J 和 Logback) -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-logging</artifactId>
</dependency>

注意事项

  1. 依赖冲突

    • 使用 Spring Boot 起始器时,通常会自动引入 SLF4J 和 Logback,因此不需要手动添加 slf4j-api 和 logback-classic。如果手动添加,可能会导致依赖冲突。
  2. 默认日志级别

    • MyBatis-Plus 的默认日志级别是 INFO,这意味着如果不显式配置,只有 INFO 级别及以上的日志信息会被记录和输出。因此,为了查看 SQL 日志,通常需要将 MyBatis 的日志级别设置为 DEBUG
  3. 自动配置

    • Spring Boot 会自动配置日志系统,通常不需要手动设置 logback.xml 或 logback-spring.xml。系统会使用默认配置来处理日志记录。
  4. 日志级别配置

    • 你可以通过 application.yml 或 application.properties 文件来配置日志级别,确保正确设置相应包的日志级别,特别是你的业务包和 MyBatis 相关的包。
  level:
    com.yyy: debug   # 设置你自己的包的日志级别
    org.apache.ibatis: debug  # 设置 MyBatis 的日志级别为 debug
  1. 使用 logback-spring.xml

    • 如果需要对日志记录进行更细粒度的控制,例如自定义日志格式或输出位置,可以创建一个 logback-spring.xml 文件。这是推荐的方式,因为 Spring Boot 会优先使用此文件。

2、logback-spring.xml 文件配置(可选)

在 src/main/resources 目录下创建 logback-spring.xml 文件,并根据需要进行配置:

    <!-- 控制台输出 -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>

    <!-- 根日志配置 -->
    <root level="debug">
        <appender-ref ref="STDOUT" />
    </root>

    <!-- MyBatis 日志配置 -->
    <logger name="org.apache.ibatis" level="debug" />
</configuration>

日志配置的详细说明

  1. Appenders
    • ConsoleAppender:将日志输出到控制台。你可以根据需要添加更多的 appender,例如 FileAppender,将日志输出到文件。
  2. Loggers
    • root:定义根日志级别和输出目标。所有未特别指定的包的日志将继承此配置。
    • logger:为特定包设置日志级别。可以根据需要添加多个 logger。
  3. 模式
    • %d{yyyy-MM-dd HH:mm:ss}:日志输出的时间格式。
    • %-5level:日志级别的宽度设置。
    • [%thread]:输出当前线程。
    • %logger{36}:输出记录日志的类名,最大长度为 36。
    • %msg:输出日志消息。
    • %n:换行符。

总结

通过使用 Spring Boot 的 spring-boot-starter-logging 依赖,可以更轻松地集成 SLF4J 和 Logback,而无需担心版本冲突或配置问题。在需要自定义日志输出时,使用 logback-spring.xml 文件进行配置是最佳实践。同时,确保正确设置日志级别,特别是将 MyBatis 的日志级别设置为 DEBUG,以便在开发和调试过程中能够看到所需的 SQL 日志信息。

以上就是MyBatis-Plus使用sl4j日志打印SQL的代码详解的详细内容,更多关于MyBatis-Plus sl4j打印SQL的资料请关注脚本之家其它相关文章!

相关文章

  • Java基础之集合框架详解

    Java基础之集合框架详解

    这篇文章主要介绍了Java基础之集合框架详解,文中有非常详细的代码示例,对正在学习java的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • java使用gzip实现文件解压缩示例

    java使用gzip实现文件解压缩示例

    这篇文章主要介绍了java使用gzip实现文件解压缩示例,需要的朋友可以参考下
    2014-03-03
  • MyBatis-Plus 自动填充的实现示例

    MyBatis-Plus 自动填充的实现示例

    MyBatis-Plus 提供了自动填充功能,帮助开发者在插入或更新数据时,自动为某些字段赋值,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-09-09
  • springboot切面添加日志功能实例详解

    springboot切面添加日志功能实例详解

    在本篇文章里小编给大家整理的是关于springboot 切面添加日志功能的相关知识点内容,有需要的朋友们可以参考下。
    2019-09-09
  • idea上提交项目到gitee 最后出现 Push rejected的问题处理方法

    idea上提交项目到gitee 最后出现 Push rejected的问题处理方法

    这篇文章主要介绍了idea上面提交项目到gitee 最后出现 Push rejected的问题处理方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • Java8 实现stream将对象集合list中抽取属性集合转化为map或list

    Java8 实现stream将对象集合list中抽取属性集合转化为map或list

    这篇文章主要介绍了Java8 实现stream将对象集合list中抽取属性集合转化为map或list的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • java实现自定义日期选择器的方法实例

    java实现自定义日期选择器的方法实例

    日期选择器是我们日常开发中经常需要用到的一个功能,下面这篇文章主要给大家介绍了关于利用java实现自定义日期选择器的相关资料,文中给出了详细的示例代码,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2017-10-10
  • SpringBoot读取resource目录下文件失败的原因及解决方案

    SpringBoot读取resource目录下文件失败的原因及解决方案

    在idea中运行时,有些resource下文件读取工具类能够正常获取读取到文件,但是通过java–jar的方式去运行jar包,此时resource下文件读取工具类读取文件就失效了,本文就给大家介绍一下SpringBoot读取resource目录下文件失败解决方案,需要的朋友可以参考下
    2023-08-08
  • Java操作redis实现增删查改功能的方法示例

    Java操作redis实现增删查改功能的方法示例

    这篇文章主要介绍了Java操作redis实现增删查改功能的方法,涉及java操作redis数据库的连接、设置、增删改查、释放资源等相关操作技巧,需要的朋友可以参考下
    2017-08-08
  • Quarkus集成open api接口使用swagger ui展示

    Quarkus集成open api接口使用swagger ui展示

    这篇文章主要为大家介绍了Quarkus集成open api接口使用swagger ui的展示示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2022-02-02

最新评论