温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java Logger 日志记录器怎么用

发布时间:2026-10-03 03:07:32 来源:亿速云 阅读:91 作者:小樊 栏目:编程语言

在 Java 中,Logger(日志记录器) 通常使用的是 java.util.logging(JUL) 或者更常用的 Log4j / Logback(SLF4J)。下面我从 最基础的 JUL 讲起,再补充 主流用法。


一、Java 自带日志:java.util.logging(JUL)

1️⃣ 创建 Logger

import java.util.logging.Logger;

public class Demo {
    private static final Logger logger = Logger.getLogger(Demo.class.getName());

    public static void main(String[] args) {
        logger.info("程序启动");
    }
}

2️⃣ 日志级别(由低到高)

SEVERE  > WARNING > INFO > CONFIG > FINE > FINER > FINEST

示例:

logger.severe("严重错误");
logger.warning("警告信息");
logger.info("普通信息");
logger.fine("调试信息"); // 默认不显示

3️⃣ 设置日志级别

import java.util.logging.Level;

logger.setLevel(Level.FINE);

4️⃣ 输出到文件(Handler)

import java.util.logging.*;
import java.io.*;

FileHandler fh = new FileHandler("app.log", true);
fh.setFormatter(new SimpleFormatter());
logger.addHandler(fh);
logger.setUseParentHandlers(false); // 不输出到控制台

二、主流日志方案(推荐 ✅)

✅ SLF4J + Logback(最常用)

1️⃣ 引入依赖(Maven)

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

2️⃣ 使用 Logger

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

public class Demo {
    private static final Logger log = LoggerFactory.getLogger(Demo.class);

    public static void main(String[] args) {
        log.info("程序启动");
        log.warn("警告信息");
        log.error("错误信息");
    }
}

3️⃣ 占位符(推荐)

String user = "Tom";
log.info("用户 {} 登录成功", user);

三、Logback 配置文件(logback.xml)

<configuration>
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level %logger - %msg%n</pattern>
        </encoder>
    </appender>

    <root level="INFO">
        <appender-ref ref="CONSOLE"/>
    </root>
</configuration>

四、常见建议 ✅

  • ✅ 用 private static final Logger
  • ✅ 用 SLF4J(解耦日志实现)
  • ✅ 不要 System.out.println
  • ✅ 生产环境用 INFO / WARN / ERROR

如果你告诉我:

  • 用的是 Spring / Spring Boot
  • 还是 普通 Java 项目
  • 还是 想用 Log4j2

我可以直接给你对应的完整示例配置。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手