slf4j下使用log4j

slf4j是日志门面,可以简单理解为接口

而log4j则可以理解为具体的实现

两者结合使用首先要在pom.xml里加入

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.25</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
    <version>1.7.25</version>
</dependency>     

然后在项目根目录创建log4j.properties

log4j.rootLogger = info,stdout,E

log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern =%d{yyyy-MM-dd HH\:mm\:ss,SSS}|%F\:%L|%p|%m%n

log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
log4j.appender.E.File =C:/log4j/infoFile.log
log4j.appender.E.Append = true
log4j.appender.E.Threshold = INFO 
log4j.appender.E.layout = org.apache.log4j.PatternLayout
log4j.appender.E.layout.ConversionPattern =%d{yyyy-MM-dd HH\:mm\:ss,SSS}|%F\:%L|%p|%m%n

最后可以参考源码中的使用方法

 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;

 public class Wombat {

   final static Logger logger = LoggerFactory.getLogger(Wombat.class);
   Integer t;
   Integer oldT;

   public void setTemperature(Integer temperature) {
     oldT = t;
     t = temperature;
     logger.debug("Temperature set to {}. Old temperature was {}.", t, oldT);
     if(temperature.intValue() > 50) {
       logger.info("Temperature has risen above 50 degrees.");
     }
   }
 }

 

posted on 2022-07-09 15:42  会走路的虾米  阅读(197)  评论(0编辑  收藏  举报

导航