MyBatis日志工厂学习笔记

本文介绍MyBatis中日志配置的方法,包括内置日志工厂的选择与使用,特别是LOG4J日志实现的详细步骤。从依赖包的导入到log4j.properties配置文件的编写,再到MyBatis配置文件中的日志实现选择,最后通过示例展示如何在代码中使用LOG4J进行日志记录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


mybatis – MyBatis 3 | 日志
https://mybatis.org/mybatis-3/zh/logging.html

一、日志的作用

# 日志作为异常问题的排查的工具。

二、MyBatis 内置日志工厂

	// MyBatis 支持日志实现的工具有:需要在MyBatis的配置文件中设置为哪一个实现
	SLF4J
    LOG4J(掌握)
    LOG4J2
    JDK_LOGGING
    COMMONS_LOGGING
    STDOUT_LOGGING(掌握,默认的输出日志的方式,什么都不配置的情况下)
    NO_LOGGING

三、MyBatis 配置日志标签

1.标准日志工厂实现

    <settings>
        <!-- name="logImpl" 为固定格式-->
        <!--标准的日志工厂实现-->
        <!--<setting name="logImpl" value="STDOUT_LOGGING"/>-->
    </settings>

	注意:配置不需要导入外部包,直接如上配置即可

2.LOG4J 日志实现

# LOG4J 是Apache下的开源项目,可以通过灵活配置输出日志,不需要修改源代码
第一步,先导入 LOG4J 依赖包
<!-- https://mvnrepository.com/artifact/log4j/log4j -->
<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version>
</dependency>
第二步,log4j.properties 配置文件
# 将等级为DEBUG的日志信息输出到console和file这两个目标位置,console和file的定义在下面代码
log4j.rootLogger=DEBUG,console,file

# 控制台console 输出的相关配置
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.Threshold=DEBUG
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[%c]-%m%n

# 文件 File 输出的相关配置
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=./log/ych.log
log4j.appender.file.MaxFileSize=10mb
log4j.appender.file.Threshold=DEBUG
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=[%p][%d{yy-MM-dd}]][%c]-%m%n

# 日志的输出级别设置
log4j.logger.org.mybatis=DEBUG
log4j.logger.java.sql=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.ResultSet=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
第三步,配置日志输入为LOG4J的实现
    <settings>
        <!-- name="logImpl" 为固定格式-->
        <!--标准的日志工厂实现-->
        <!--<setting name="logImpl" value="STDOUT_LOGGING"/>-->
        <!--LOG4J日志实现-->
        <setting name="logImpl" value="LOG4J"/>
    </settings>
第四部,简单实现

在需要打印日志的类中引用日志:

import org.apache.log4j.Logger;
import org.junit.Test;

public class TestMyBatis {
    static Logger logger = Logger.getLogger(TestMyBatis.class);
    
    @Test
    public void  test05(){
        // logger. 方法可以根据实际使用定义输出的日志级别
        logger.info("info:进入了test05的方法");
        logger.debug("debug:进入了test05的方法");
        logger.error("error:进入了test05的方法");
    }
    
    // 在项目的log文件中可以查看打印的日志文件
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值