当前位置:首页 > Java

java如何加log

2026-03-26 06:23:52Java

在Java中添加日志记录可以通过多种方式实现,以下是几种常见的方法:

使用java.util.logging(JUL)

Java自带的日志框架java.util.logging无需引入额外依赖,适合简单场景。

import java.util.logging.Logger;

public class Example {
    private static final Logger LOGGER = Logger.getLogger(Example.class.getName());

    public void demo() {
        LOGGER.info("This is an info message");
        LOGGER.warning("This is a warning message");
    }
}

使用Log4j 2

Apache Log4j 2是广泛使用的高性能日志框架,需添加依赖(如Maven):

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.17.1</version>
</dependency>

配置文件log4j2.xml示例:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss} [%t] %-5level %logger{36} - %msg%n"/>
        </Console>
    </Appenders>
    <Loggers>
        <Root level="info">
            <AppenderRef ref="Console"/>
        </Root>
    </Loggers>
</Configuration>

代码示例:

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

public class Example {
    private static final Logger LOGGER = LogManager.getLogger(Example.class);

    public void demo() {
        LOGGER.info("Log4j2 info message");
        LOGGER.error("Log4j2 error message");
    }
}

使用SLF4J + Logback

SLF4J是日志门面,Logback是具体实现,组合使用更灵活。

Maven依赖:

<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.2.6</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.32</version>
</dependency>

配置文件logback.xml示例:

<configuration>
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>
    <root level="DEBUG">
        <appender-ref ref="STDOUT" />
    </root>
</configuration>

代码示例:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class Example {
    private static final Logger LOGGER = LoggerFactory.getLogger(Example.class);

    public void demo() {
        LOGGER.debug("SLF4J debug message");
        LOGGER.warn("SLF4J warn message");
    }
}

使用Lombok简化

通过Lombok的@Slf4j注解自动生成日志对象,减少样板代码。

Maven依赖:

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.22</version>
    <scope>provided</scope>
</dependency>

代码示例:

import lombok.extern.slf4j.Slf4j;

@Slf4j
public class Example {
    public void demo() {
        log.info("Lombok log message");
    }
}

日志级别说明

常见日志级别从低到高:

java如何加log

  • TRACE:最详细的调试信息
  • DEBUG:调试信息
  • INFO:常规运行信息
  • WARN:警告信息
  • ERROR:错误信息
  • FATAL:严重错误

根据需求选择合适的日志框架和级别,避免过度记录影响性能。生产环境建议使用INFO及以上级别。

标签: javalog
分享给朋友:

相关文章

如何学习java

如何学习java

学习Java的步骤 理解基础知识 从Java的基本语法开始,包括变量、数据类型、运算符、控制流(if-else、循环)等。掌握这些基础概念是后续学习的基石。 学习面向对象编程(OOP) Java是一…

如何自学java

如何自学java

选择合适的学习资源 从官方文档开始,Oracle提供的Java官方教程(Java Tutorials)是权威且免费的学习资料。在线平台如Codecademy、Coursera或Udemy提供互动式课程…

如何运行java文件

如何运行java文件

运行Java文件的方法 确保已安装Java Development Kit (JDK),可通过命令行输入java -version和javac -version验证安装。 编写Java代码并保存为.…

如何系统的学习java

如何系统的学习java

学习Java的基础知识 Java的基础知识包括语法、数据类型、变量、运算符、控制流语句等。可以通过官方文档或入门书籍如《Java核心技术》来掌握这些内容。编写简单的程序练习基础语法,例如打印“Hell…

java js实现转盘抽奖

java js实现转盘抽奖

实现转盘抽奖的步骤 HTML结构 创建转盘抽奖的基本HTML结构,包括转盘区域和抽奖按钮。 <div id="wheel"> <canvas id="wheelCanv…

log实现js

log实现js

log 实现 JavaScript 的方法 在 JavaScript 中,log 通常指代 console.log,用于在控制台输出信息。以下是几种常见的实现方式: 使用 console.log 输…