千家信息网

logback中怎么显示mybatis查询日志文件并写入

发表于:2024-11-24 作者:千家信息网编辑
千家信息网最后更新 2024年11月24日,本文小编为大家详细介绍"logback中怎么显示mybatis查询日志文件并写入",内容详细,步骤清晰,细节处理妥当,希望这篇"logback中怎么显示mybatis查询日志文件并写入"文章能帮助大家
千家信息网最后更新 2024年11月24日logback中怎么显示mybatis查询日志文件并写入

本文小编为大家详细介绍"logback中怎么显示mybatis查询日志文件并写入",内容详细,步骤清晰,细节处理妥当,希望这篇"logback中怎么显示mybatis查询日志文件并写入"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

在logback中显示mybatis查询日志

一、配置文件

可以有多种不同的实现,以下是将日志输出到控制台

mybatis:  configuration:    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

二、定制包的日志level

logging:  level:    #你的repository的包    com.kingboy.repository: debug

三、通过logback-spring.xml文件

在文件中新增如下配置

//添加这部分内容,改为自己的包路径

将操作数据库sql记录到日志文件中

springboot+mybatis

mybatis:  # 标注待解析的mapper的xml文件位置  mapper-locations: classpath:mapper/*.xml  configuration:    # org.apache.ibatis.logging.slf4j.Slf4jImpl    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

具体实现方式是重写StdOutImpl类

实现方式如下:

package com.emily.infrastructure.datasource.log;import com.emily.infrastructure.logback.factory.LogbackFactory;import org.apache.ibatis.logging.Log;/*** @Description: 将mybatis sql语句记录到日志文件中实现类,是org.apache.ibatis.logging.stdout.StdOutImpl类的替换* @Author: Emily* @create: 2021/8/22*/public class LogBackImpl implements Log {    public LogBackImpl(String clazz) {        // Do Nothing    }    @Override    public boolean isDebugEnabled() {        return true;    }    @Override    public boolean isTraceEnabled() {        return true;    }    @Override    public void error(String s, Throwable e) {        LogbackFactory.module("database", "database", s);        e.printStackTrace(System.err);    }    @Override    public void error(String s) {        LogbackFactory.module("database", "database", s);    }    @Override    public void debug(String s) {        LogbackFactory.module("database", "database", s);    }    @Override    public void trace(String s) {        LogbackFactory.module("database", "database", s);    }    @Override    public void warn(String s) {        LogbackFactory.module("database", "database", s);    }}

要想重写的实现类生效,需将配置替换为实现类,如下:

mybatis:  # 标注待解析的mapper的xml文件位置  mapper-locations: classpath:mapper/*.xml  configuration:    # org.apache.ibatis.logging.slf4j.Slf4jImpl    log-impl: com.emily.infrastructure.datasource.log.LogBackImpl

读到这里,这篇"logback中怎么显示mybatis查询日志文件并写入"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。

0