Spring Boot日志:从Logger到@Slf4j的探秘
    		       		warning:
    		            这篇文章距离上次修改已过425天,其中的内容可能已经有所变动。
    		        
        		                
                在Spring Boot中,我们通常使用SLF4J(Simple Logging Facade for Java)作为日志门面,与具体的日志实现框架(如Logback或Log4j2)解耦。这允许我们在部署时轻松更改日志实现,而不必更改代码。
使用@Slf4j注解可以让你在类中直接使用日志变量,而不是显式调用LoggerFactory.getLogger(MyClass.class)。
以下是使用@Slf4j注解的示例代码:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
 
public class MyClass {
    // 使用LoggerFactory显式获取日志实例
    private static final Logger log = LoggerFactory.getLogger(MyClass.class);
 
    public void doSomething() {
        log.info("这是一个信息级别的日志");
    }
}使用@Slf4j注解后的代码:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
 
public class MyClass {
    // 使用@Slf4j注解自动注入日志实例
    private static final Logger log = LoggerFactory.getLogger(MyClass.class);
 
    public void doSomething() {
        log.info("这是一个信息级别的日志");
    }
}在这两个示例中,我们都是通过Logger来记录日志。但是使用@Slf4j注解可以让代码更加简洁,并且使用log变量就可以直接记录不同级别的日志,而不需要每次都指定LoggerFactory和具体的日志类。
评论已关闭