`

slf4j与log4j结合使用说明

 
阅读更多
在网上下载的源码很多使用的都是slf4j,运行时经常没有日志信息。

      下面是slf4j的说明:

      SLF4J是为各种loging APIs提供一个简单统一的接口,从而使得最终用户能够在部署的时候配置自己希望的loging APIs实现。 Logging API实现既可以选择直接实现SLF4J接的loging APIs如: NLOG4J、SimpleLogger。也可以通过SLF4J提供的API实现来开发相应的适配器如Log4jLoggerAdapter、JDK14LoggerAdapter。

      我们常用log4j作为日志输出,下面是配置信息(基于maven):

     在maven的pom.xml中,添加如下引用:

  

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
    <version>1.7.21</version>
</dependency>
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.6</version>
</dependency>

 即可使用log4j作为日志的输出,如果是web项目,指定log4j相关配置信息,需要在web.xml中添加相应代码:

<!-- Log4j配置 -->
 <context-param>
  <param-name>log4jConfigLocation</param-name>
  <param-value>classpath:/log4j/log4j.xml</param-value>
 </context-param>
 <!-- 加载log4j配置文件 -->
 <listener>
  <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
 </listener>

 如果是单元测试时,可以在test类中使用静态块,加载log4j相关配置:

 

static {  
        try {  
            Log4jConfigurer.initLogging("classpath:config/log4j.properties");  
        } catch (FileNotFoundException ex) {  
            System.err.println("Cannot Initialize log4j");  
        }  
    }        

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics