slf4j 和 log4j使用案例

时间:2023-03-09 17:06:19
slf4j 和 log4j使用案例
  以Maven项目为例:

  步骤:

  1.在Maven的pom.xml文件中添加dependency:

  slf4j 和 log4j使用案例

  之后就会添加3个jar包

  slf4j 和 log4j使用案例

  2.在项目下添加log4j.properties 

  slf4j 和 log4j使用案例

  3.log4j.properties文件内容

   slf4j 和 log4j使用案例

  该配置文件解释如下:

  Log4j有三个主要的组件:Loggers(记录器),Appenders(输出源)和Layout(布局样式)。可以理解为:日志类别,日志要输出的地方和日志以何种形式输出。

  Loggers主要的4个级别:DEBUG < INFO < WARN < ERROR 假设loggers级别设定为INFO,则INFO,WARN,ERROR级别的日志信息都会输出。

  1.Log4j.rootLogger = info,stdout,freight-trk-mgr

  log4j.rootLogger = [ level ] , appenderName, appenderName, …
  其中, level 是日志记录的优先级,分为 OFF 、 FATAL 、 ERROR 、 WARN 、 INFO 、 DEBUG 、 ALL 或者您定义的级别。 Log4j 建议只使用四个级别 ,优先级从高到低分别是 ERROR 、 WARN 、 INFO 、 DEBUG 。通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。比如在这里定 义了 INFO 级别,则应用程序中所有 DEBUG 级别的日志信息将不被打印出来 。 appenderName 就是指 B 日志信息输出到哪个地方。您可以同时指定多个输出目的地。

  2.log4j.appender.stdout=org.apache.log4j.ConsoleAppender (控制台)

    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout(可以灵活的指定布局)

log4j.appender.stdout.layout.ConversionPattern=[freight-trk-mgr] %d{yyyy-MM-dd HH:mm:ss} [%p]-[%t]-[%c]-[%l] - %m%n(灵活的指定的布局样式)

  3.log4j.appender.freight-trk-mgr=org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)

    log4j.appender.freight-trk-mgr.File=log/freight-trk-mgr/freight-trk-mgr.log(文件路径)
      log4j.appender.freight-trk-mgr.DatePattern='.'yyyy-MM-dd(文件名称后加日期)

  更多详细解说,参考:http://blog.****.net/anlina_1984/article/details/5313023

  4.在web.xml中配置:

  slf4j 和 log4j使用案例

  “classpath:”代表:/WEB-INF /classes/

  5.在代码中添加:

  slf4j 和 log4j使用案例

  6.接下来就可以使用了:

  slf4j 和 log4j使用案例

  classpath就是代表  /WEB-INF /classes/  这个路径

  classpath 和 classpath* 区别:

  classpath:只会到你的class路径中查找找文件;
  classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找