使用SLF4J记录日志

日志推荐

       1、在使用日志时应该使用抽象层接口日志框架来记录日志,方便以后的扩展和更换日志框架;

        2、日志抽象层框架推荐:

                JCL(Jakarta Commons Logging):Spring4以前使用的日志框架,5以后放弃了;

                 SLF4j(Simple Logging Facade for Java):推荐使用的框架;

                 jboss-logging:这个日志框架使用较少不推荐使用;

        3、日志实现层框架推荐:

               JUL(java.util.logging):这个是jdk中自带的日志框架,不推荐使用;

                Log4j :这个是老一代的日志框架,也不推荐使用;

                Logback:log4j和slf4j以及logback都是都一个人出的日志框架,兼容性更好功能更强大,推荐使用;

                Log4j2 :这个是apache在log4j的基础上新出的框架,功能也很强大,但是logback还是首选;

如何使用SLF4J

        如上图所示,要使用slf4j日志框架作为抽象层日志框架,首先需要导入slf4j的jar包,然后导入实现了slf4j的日志实现jar包才能正常使用日志记录的功能;

        由于log4j和jul是老的日志框架,并没有实现slf4j,所以如果使用log4j或者jul来做日志实现层的日志记录功能,需要引入一个slf4j提供放入适配jar包,从而才能进行正常的日志记录功能;

实际项目中遇到的问题

        由于在实际的项目中,我们需要使用和依赖第三方的框架进行操作,这时会出现使用的第三方框架使用的日志并不是我们项目中正使用的日志框架,如果直接排除第三方的日志框架会报错,这个时候该如何让项目中统一使用我们自己选择的日志框架呢?

        上图表示的是,如何在项目中使用logback来记录日志的流程;

                1、首先需要导入抽象层slf4j的jar包;

                2、排除掉各三方框架对应的日志框架依赖包;

                3、导入slf4j提供的jcl、log4j、jul的替换包;

                4、再导入logback的jar包即可;

          替换包所做的功能只是使用其他日志框架的相同类路径,在具体类中对slf4j进行了适配而已;

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • log4j, log4j2, slf4j, logback关系 log4j是由Apache开发的一套元老级日志框架...
    rainybowe阅读 1,677评论 0 4
  • 对于Java的日志框架,你也许会经常看到这些名词: Log4j、Log4j2 Logback Slf4j JCL ...
    NoahU阅读 3,977评论 0 15
  • 在项目开发过程中,我们可以通过 debug 查找问题。而在线上环境我们查找问题只能通过打印日志的方式查找问题。因此...
    Java架构阅读 3,501评论 2 41
  • 概述 在项目开发中,为了跟踪代码的运行情况,常常要使用日志来记录信息。在Java世界,有很多的日志工具库来实现日志...
    静默虚空阅读 1,889评论 1 9
  • JAVA日志系统的演变史 我们先看一个故事。项目经理A带着一帮兄弟开发了一套复杂的企业ERP系统,这个系统一连开发...
    糖宝_阅读 655评论 0 4