关于Log4j、Commons-logging、slf4j

Log4j

强大的日志输出工具,可以定义数据格式和输出方式.不少项目都在用

apache commons-logging

  • 我我的理解为对log进行统一的封装,对项目的log输出进行解耦
  • 经过commons-logging.properties进行配置采用哪种log真正的输出方式
  • 若是不进行任何配置而且项目存在log4j的类就会使用log4j.不然1.4以上的jdk使用simpleLog
  • 项目不须要关心log是怎么输出的, 只须要调用统一的方法就好,能够随时更换后台的log架构

slf4j

重量级的apache

  • Slf4j库相似于Apache Common-Logging。可是,他在编译时静态绑定真正的Log库。使用Slf4j时,若是你须要使用某一种日志实现,那么你必须选择正确的Slf4j的jar包的集合。架构

  • 好比你要引用slf4j+log4j的组合.jar包方面除了slf4j+log4j基本包, 还须要slf4j-log4j12.工具

可是可以解决一些采用commons-logging会发生的问题, 毕竟commons-logging是运行时才会检测到底使用了哪一个log输出.若是你是要作一个工具包,引入你的工具包的项目不必定可以符合commons-logging的使用条件.日志

相关文章
相关标签/搜索