• 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html
  • 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html

commons-logging,log4j,logback,slf4j之间的关系详解。

技术杂谈 勤劳的小蚂蚁 3个月前 (01-18) 74次浏览 已收录 0个评论 扫描二维码

commons-logging

是apache最早提供的日志的门面接口。它的主要作用是提供一个日志门面,使用者可以使用不同的日志实现。用户可以自由选择第三方的日志组件作为具体实现,像log4j,或者jdk自带的logging, common-logging会通过动态查找的机制,在程序运行时自动找出真正使用的日志库。common-logging内部有一个Simple logger的简单实现,但是功能很弱。

官网:https://commons.apache.org/proper/commons-logging/

slf4j


全称:Simple Logging Facade for Java 


官网:https://www.slf4j.org/

The Simple Logging Facade for Java (SLF4J) serves as a simple facade or abstraction for various logging frameworks (e.g. java.util.logging, logback, log4j) allowing the end user to plug in the desired logging framework at deployment time.

从官网的描述看,slf4j只是一种日志的门面和日志抽象框架,而java.util.logging,log4j,logback都是slf4j抽象框架的具体实现,只要调用slf4j的API就可以集成任何的实现框架在一起。


logging

Java内部自带的日志工具,java.util包下。


log4j

Apache下的一个开源日志框架,也是目前应用最广的一个日志框架。

官网:https://logging.apache.org/log4j/2.x/

logback

logback是slf4j的原生实现框架,同样是log4j同一个人之手,但拥有比log4j更多的优点和更多的特性,用来代替log4j。

官网:https://logback.qos.ch/

为什么要选择logback作为目前的日志框架可参考下面链接

英文:https://logback.qos.ch/reasonsToSwitch.html
中文:http://www.oschina.net/translate/reasons-to-prefer-logbak-over-log4j

更快的执行速度

基于我们先前在log4j上的工作,logback 重写了内部的实现,在某些特定的场景上面,甚至可以比之前的速度快上10倍。在保证logback的组件更加快速的同时,同时所需的内存更加少。

为什么要推荐logback作为首推的日志框架,仅看上面这一点,就觉得logback的强悍和优秀!


总结

1、commons-loggin,slf4j只是一种日志抽象门面,不是具体的日志框架。
2、log4j,logback是具体的日志框架。
3、一般首选使用slf4j+logback,或者slf4j+log4j,commons-logging+log4j。


丨极客文库, 版权所有丨如未注明 , 均为原创丨
本网站采用知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议进行授权
转载请注明原文链接:commons-logging,log4j,logback,slf4j之间的关系详解。
喜欢 (0)
[247507792@qq.com]
分享 (0)
勤劳的小蚂蚁
关于作者:
温馨提示:本文来源于网络,转载文章皆标明了出处,如果您发现侵权文章,请及时向站长反馈删除。

您必须 登录 才能发表评论!

  • 精品技术教程
  • 编程资源分享
  • 问答交流社区
  • 极客文库知识库

客服QQ


QQ:2248886839


工作时间:09:00-23:00