转载

坑爹代码 | 这样的日志封装到底是坑爹还是有用呢?

玩 Java 的人都知道 Java 提供很多的日志框架,诸如 Log4j、SLF4J、Commons-logging 等等

更多的 Java Logging 框架请看这里。

那么怎么用日志框架才是最佳的实践呢?

下面这段代码难道真的只是一个无用的封装吗?

import org.slf4j.Marker;
// 当时完全不懂包装slf4j什么意思,还以为自己针对市面上的logger进行了封装处理,上次开会的时候这么说,我为了logger的时候像andriod能写个tag,WTF,难道你logger.info('tag:{},xxxxx',tag)这样不行么?为了六个字符创建一个logger和一个loggerFactory
public class Logger {

    /** 日志处理 */
    private org.slf4j.Logger logger;

    public static String separator = " ";

    public Logger(Class clazz) {
        logger = org.slf4j.LoggerFactory.getLogger(clazz);
    }

    public Logger(String name) {
        logger = org.slf4j.LoggerFactory.getLogger(name);
    }

    public String getName() {
        return logger.getName();
    }

    public boolean isTraceEnabled() {
        return logger.isTraceEnabled();
    }

    public void trace(String msg) {
        logger.trace(msg);
    }

    public void trace(String format, Object arg) {
        logger.trace(format, arg);
    }

    public void trace(String format, Object arg1, Object arg2) {
        logger.trace(format, arg1, arg2);
    }

    public void trace(String format, Object... arguments) {
        logger.trace(format, arguments);
    }

在我看来,起码有一个用处就是,当我们决定要更快一个日志框架的时候,直接修改该类就可以了,而不用修改项目中成千上万的文件。

你怎么看呢?

请移步下面链接发表评论,领取奖品:

https://gitee.com/oschina/bullshit-codes/blob/master/java/Logger.java

码云 6 周年,我们正在征集各种坑爹代码,很多奖品等你来拿

详细的参与方法请看 https://gitee.com/oschina/bullshit-codes

------ 分割线 ------

其他坑爹代码吐槽:

原文  https://www.oschina.net/news/107561/gitee-bullshit-code-java-logging
正文到此结束
Loading...