栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

slf4j绑定log4j使用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

slf4j绑定log4j使用

系列文章目录

文章目录
  • 系列文章目录
  • 前言
  • 一、jar包支持
  • 二、配置文件
  • 三、代码测试


前言

slf4j译为简单日志门面,是日志框架的抽象,实现了日志框架一些通用的api,而log4j和logback是众多日志框架中的几种。
log4j和logback可以单独的使用,也可以绑定slf4j一起使用。

  1. 单独使用。分别调用框架自己的方法来输出日志信息。
  2. 绑定slf4j一起使用。调用slf4j的api来输入日志信息,具体使用与底层日志框架无关(需要底层框架的配置文件)

结构图:

官方文档: https://www.slf4j.org/manual.html

本文主要是操作下slf4j绑定log4j


一、jar包支持

主要是如下三个包:
slf4j-log4j12.jar (适配器,桥接slf4j转log4j)
slf4j-api.jar (slf4j core 使用slf4j必须添加,这是slf4j日志门面,基本上为接口)
log4j.jar ( log4j日志实现)

使用Maven,则只需添加适配器jar包依赖即可:


    org.slf4j
    slf4j-log4j12
    1.7.21


二、配置文件

log4j的正常运行需要配置文件,配置文件类型(二选一):

  1. log4j.xml
  2. log4j.properties

log4j.properties的配置文件书写和字段含义可以参考链接:
http://www.blogjava.net/alexprefect/articles/372959.html
https://blog.csdn.net/lgxzzz/article/details/119751533

这里使用xml配置,配置文件如下






    
    
        
        
            
            
        
        
        
            
            
            
            
            
            
        
    

    
    
        
        
        
        
        
        
        
        
        
        
            
            
        
    

    
    
        
        
        
        
        
        
            
            
        
    

    
    
        
        
    

    
    
        
        
    

    
    
        
        
        
        
    


三、代码测试
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class TestLog4j {

    private static final Logger logger = LoggerFactory.getLogger(TestLog4j.class);

    public static void main(String[] args) {
        // 打印日志信息
        logger.trace("slf4j-log4j日志输出:This is trace message.");
        logger.debug("slf4j-log4j日志输出:This is debug message.");
        logger.info("slf4j-log4j日志输出:This is info message.");
        logger.warn("slf4j-log4j日志输出:This is warn message.");
        logger.error("slf4j-log4j日志输出:This is error message.");

        String key = "x";
        String value = "a";
        // 使用占位符输出日志信息
        logger.info("The {} = {}.", key, value);
        logger.info("The [{}] = [{}].", key, value);
        try {
            int i = 1 / 0;
        } catch (Exception e) {
            // 将系统异常信息写入日志
            logger.error("出现异常:", e);
        }
    }
}

测试结果

输出到文件

试下来,其实就是软件工程的思维,可以直接使用log4j,但这样不便于后续日志系统的变更,所以引入slf4j,也就是面向接口编程,具体需要使用哪个日志系统,则可以灵活改变

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/937370.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号