log4j和apache.commons.logging之间的关系

Paw*_*wan 10 logging log4j

有人可以告诉我log4j和apache.commons.logging之间的关系是什么?哪一个更受欢迎,更好?

我已导入现有的应用程序中,他们有进口import org.apache.commons.logging.LogFactory;和书面称为一个单独的类Log和重写一些方法为critical,warn,info

例如

 public static void info(String caller, String toWrite)
   {
      write(caller,toWrite,Log.INFO);
   }
Run Code Online (Sandbox Code Playgroud)

有人请告诉我是log4j和apache.commons.logging有什么不同?

小智 14

Apache Commons Logging是具体实现的抽象.它使用log4j(如果存在并配置).我会使用Commons登录我的代码和log4j作为日志记录实现.


TMt*_*ech 8

log4j 是一个日志框架,即它提供了记录消息的代码。Commons-logging 是日志框架的抽象层,它本身不记录任何内容。例如,如果我使用公共日志记录编写代码并将其部署在 JBoss 上,则日志记录由 log4j 完成,但如果我将其部署在 WebSphere 上,则日志记录由 WebSphere 自己的日志记录实现完成。如果我运行与独立应用程序相同的代码,则使用 Java 自己的日志记录