关闭mybatis 日志

关闭mybatis 日志

说明

  • 在网上找了一大圈都没有靠谱的答案,有时候项目中的日志打印太多,需要屏蔽部分日志打印

mybatis 日志的实现

  • 原理:就是mybatis 的日志抽取了公共的方法,需要依赖项目中的日志实现类,来实现日志打印,在不配置的时候,mybatis会按照如下的顺序去查找日志实现类

Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种方式:

  • SLF4J
  • Apache Commons Logging
  • Log4j 2
  • Log4j
  • JDK logging

其实打开源码还有一些其他实现,但这几个是大家接触的最多的,如果找到日志实现,在项目启动的时候,mybatis 就会打印相关日志

关闭日志

  • springboot 环境中

在mybatis 自动找不到 日志实现类的时候,可以指定日志实现类

在springboot 项目中可以通过在配置文件中配置该属性来指定 mybatis.configuration.log-impl

mybatis.configuration.log-impl=org.apache.ibatis.logging.nologging.NoLoggingImpl

这里配置的实现类,就是无处理,这样就关闭了日志打印,或者换成

org.apache.ibatis.logging.stdout.StdOutImpl

这两个mybatis 自带的实现类,NoLoggingImpl 是啥也不做,StdOutImpl 是将日志输出到控制台

public class StdOutImpl implements Log {
    public StdOutImpl(String clazz) {
    }

    public boolean isDebugEnabled() {
        return true;
    }

    public boolean isTraceEnabled() {
        return true;
    }

    public void error(String s, Throwable e) {
        System.err.println(s);
        e.printStackTrace(System.err);
    }

    public void error(String s) {
        System.err.println(s);
    }

    public void debug(String s) {
        System.out.println(s);
    }

    public void trace(String s) {
        System.out.println(s);
    }

    public void warn(String s) {
        System.out.println(s);
    }
}
  • 如果是其他环境

在mybatis.xml 文件中,指定相同的 log-iml 属性 ,指定对应的日志实现即可

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值