log4j切换logback

1 替换jar包    

    所需jar包:

        logback-access-0.9.24.jar

        logback-classic-0.9.24.jar

        logback-core-0.9.24.jar

        slf4j-api-1.6.1.jar

        jcl-over-slf4j-1.6.1.jar(此jar用于兼容 Spring等依赖包中的org.apache.commons.logging.*)

     需要删除的jar包:

         log4j-1.2.17.jar 

         slf4j-log4j12-1.7.2.jar(如果有,也删除)

 2 替换日志配置文件

      log4j 框架需要log4j.properties,而logback 的配置文件是logback.xml格式的。如果你 的配置文件是log4j.properties ,那么恭喜你,很简单,直接到以下地址转换:

     log4j.properties to logback.xml Translator  (http://logback.qos.ch/translator/)即可。如果不是,那么要自己写logback.xml配置了。然后把logback.xml放到相应的读取路径下,删掉log4j配置文件即可。

 

3 代码转换

   

    如果用的是org.apache.commons.logging.* 恭喜你,可以完全不用更改动代码,即可完成迁移(参考jcl-over-slf4j-1.6.1.jar)。

    如果你用的是org.apache.log4j.Logger,那么就要修改代码:

    1)     import org.apache.log4j.Logger;  importorg.slf4j.Logger;    import org.slf4j.LoggerFactory;

    2)     private static Logger LOG =Logger.getLogger(ServerRunner.class);   private static Logger LOG =LoggerFactory.getLogger(ServerRunner.class);

    3)     如果你对log4j有过封装,那么只替换一个地方即可;如果没有的话,恐怕每个输出日志的类文件都要改动了。工作量很大,推荐一个文本替换工   具:SearchAndReplace。同时建议对logback封装一层,方便维护

 

 

4  测试类

 

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

public class LogbackDemo {

    private static Logger log = LoggerFactory.getLogger(LogbackDemo.class);

 

    public static void main(String[] args) {

        log.trace("======trace");

        log.debug("======debug");

        log.info("======info");

        log.warn("======warn");

        log.error("======error");

    }

}

 

猜你喜欢

转载自huttoncs.iteye.com/blog/2337383