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

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值