Java 日志记录的两种方式
一、@Slf4j 注解方式
- 更简洁,依赖 Lombok
- 所有类使用相同的日志对象命名(log)
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class yourClass {
public void doSomething() {
log.info("This is an info message");
log.error("This is an error message");
}
}
二、手动创建 Logger 对象
- 灵活性较高,不依赖 Lombok
- 不同类中日志对象命名可能不一致
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class yourClass {
private static final Logger logger = LoggerFactory.getLogger(yourClass.class);
public void doSomething() {
logger.info("This is an info message");
logger.error("This is an error message");
}
}
三、对比
image.png
四、总结
- 如果项目支持 Lombok,推荐使用 @Slf4j,因为它更简洁、易用。
- 如果项目不支持 Lombok 或需要更高的灵活性,推荐使用 LoggerFactory.getLogger。
- 两者在性能上没有明显差异,选择取决于项目需求和团队规范。