MyBatis日志管理


什么是日志?

 日志就是系统运行的历史记录,日志文件是用于记录系统操作世事件的记录文件或文件集合,日志保存历史数据,是诊断问题以及理解系统活动的重要依据。

SLF4j与Logback

 在Java中日志分为两部分:日志门面与日志实现。日志门面为Java提供了统一的日志调用接口,日志实现的组件提供了日志的打印、输出与管理功能。正是因为在日志中基于门面和实现彼此分开,所以为程序迁移提供了极大便利。当面向统一的日志门面时,底层具体的日志实现对于调用者而言就不再重要了,两种日志实现切换的工作由日志门面自动完成。目前工作项目的主流日志实现是logback。MyBatis底层通过SLF4j支持logback与其协同作业,并输出日志。

将Mybatis产生的SQL打印在控制台

 在pom.xml中添加依赖即可

<dependency>
    <groupId>ch.qos.logbackgroupId>
    <artifactId>logback-classicartifactId>
    <version>1.2.3version>
dependency>

 logback允许对日志进行自定义,在resources目录下创建logback.xml

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
    
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        
        <encoder>
            
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%npattern>
        encoder>
    appender>
    
    
    <root level="debug">
        <appender-ref ref="console"/>
    root>
configuration>

 开发环境中level设置为debug,生产环境中level设置为info以上。

Logback官网:https://logback.qos.ch/