温馨提示×

温馨提示×

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

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

java Logger 日志记录器怎么集成

发布时间:2026-10-03 02:13:34 来源:亿速云 阅读:85 作者:小樊 栏目:编程语言

在 Java 中,**Logger(日志记录器)**常见的集成方式主要有三种:JDK 自带的 java.util.logging(JUL)、Log4j / Log4j2、SLF4J + 具体实现(推荐)。下面按使用场景给你一个清晰的集成指南。


一、JDK 自带 Logger(java.util.logging,最简单)

1️⃣ 基本使用

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("这是 info 日志");
        logger.warning("这是 warning 日志");
    }
}

2️⃣ 配置文件(可选)

logging.properties

handlers=java.util.logging.ConsoleHandler
.level=INFO
java.util.logging.ConsoleHandler.level=INFO

运行:

java -Djava.util.logging.config.file=logging.properties Demo

✅ 适合:小项目、快速验证


二、Log4j2(企业常用,功能强)

1️⃣ 引入依赖(Maven)

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

2️⃣ 配置文件 log4j2.xml

<Configuration status="WARN">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} %-5level %logger - %msg%n"/>
        </Console>
    </Appenders>
    <Loggers>
        <Root level="info">
            <AppenderRef ref="Console"/>
        </Root>
    </Loggers>
</Configuration>

3️⃣ 使用

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

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

    public static void main(String[] args) {
        logger.info("log4j2 info");
    }
}

三、SLF4J + Logback(⭐ 最推荐)

为什么推荐?

  • 日志门面(解耦)
  • Spring Boot 默认
  • 性能好、生态好

1️⃣ Maven 依赖

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

2️⃣ 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>

3️⃣ 使用

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

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

    public static void main(String[] args) {
        logger.info("slf4j + logback");
    }
}

四、Spring Boot 项目(开箱即用)

✅ 不需要手动集成

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

默认使用:

  • SLF4J + Logback
  • application.yml 可配置日志级别
logging:
  level:
    com.example: debug
  file:
    name: app.log

五、如何选择?

场景 推荐
学习 / 小工具 JUL
传统企业项目 Log4j2
Spring / 新项目 SLF4J + Logback
微服务 SLF4J + Logback / Log4j2

如果你告诉我:

  • 用的是 Spring Boot 还是普通 Java
  • Maven / Gradle
  • 想输出到 控制台 / 文件 / 远程

我可以直接给你一份可复制的完整配置。

向AI问一下细节

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

AI
助
手