MyBatis - (05) 集成日志框架logback

image-20230206074352715

MyBatis - (05) 集成日志框架logback

1. 日志框架的概述

引入日志框架的目的是为了看清楚mybatis执行的具体sql。

常见的MyBatis日志框架:

  • SLF4J:是一个日志标准,其中有一个框架叫做logback
  • LOG4J
  • LOG4J2
  • STDOUT_LOGGING

其中STDOUT_LOGGING是标准日志,Mybatis已经实现了这种标准日志,mybatis框架本身已经实现了这种标准。

启用标准日志组件,只需要在mybatis-config.xml文件中添加以下配置:

<settings>
	<setting name="logImpl" value="STDOUT_LOGGING" />
</settings>

标准日志也可以用,可以看到一些信息,比如连接对象什么时候创建,什么时候关闭,sql语句是怎样的,但是没有详细的日期,线程名字等

在这里插入图片描述

如果想要使用更加丰富的配置,可以集成其他的日志组件,例如:log4j,logback等。

logback是目前日志框架中性能较好的,实现了SLF4J标准(日志标准)。()

2. 集成日志框架logback

第一步:引入logback相关依赖

<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.2.11</version>
    <scope>test</scope>
</dependency>

第二步:引入logback相关配置文件

配置文件的文件名必须是做logback.xml或logback-test.xml

配置文件的位置必须是类的根路径下,不能是其他位置

<?xml version="1.0" encoding="UTF-8"?>

<configuration debug="false">
    <!-- 控制台输出 -->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
        </encoder>
    </appender>
    <!--mybatis log configure-->
    <logger name="com.apache.ibatis" level="TRACE"/>
    <logger name="java.sql.Connection" level="DEBUG"/>
    <logger name="java.sql.Statement" level="DEBUG"/>
    <logger name="java.sql.PreparedStatement" level="DEBUG"/>

    <!-- 日志输出级别,logback日志级别包括五个:TRACE < DEBUG < INFO < WARN < ERROR -->
    <root level="DEBUG">
        <appender-ref ref="STDOUT"/>
        <appender-ref ref="FILE"/>
    </root>

</configuration>

运行测试程序,控制台输入日志信息:

image-20230329160610757

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Spring Boot中设置打印MyBatis的SQL语句,可以按照以下步骤进行操作: 1. 在application.properties或application.yml配置文件中,添加如下配置: ```properties # 设置MyBatis打印SQL语句 mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl ``` 这样配置后,MyBatis将使用StdOutImpl类来打印SQL语句。 2. 如果您想将SQL语句打印到日志文件中而不是控制台,可以使用其他日志框架,如Log4j或Logback。首先,根据您选择的日志框架,添加相应的依赖和配置。然后,将打印SQL语句的日志级别设置为DEBUG级别,以确保SQL语句被记录在日志文件中。 请注意,以上步骤适用于使用MyBatis和Spring Boot集成的情况。如果您是直接使用MyBatis而不是通过Spring Boot集成,请参考MyBatis的文档和配置来设置打印SQL语句。 引用 中提到了要将SQL语句打印到日志中,而引用 则提到了一个基于Spring Boot开发的仓库系统,其中也提到了打印功能。以上步骤是针对Spring Boot中设置打印MyBatis的SQL语句的,希望对你有帮助。<span class="em">1</span><span class="em">2</span> #### 引用[.reference_title] - *1* [springboot整合mybatis将sql打印到日志](https://blog.csdn.net/fan510988896/article/details/67638067)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* [springboot+mybatis+sqlserver 仓库管理系统](https://download.csdn.net/download/shunyache3481/85474500)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值