【IntelliJ IDEA 2019.2】java log4j 最简用法及进阶用法
发布日期:2021-05-13 00:03:33 浏览次数:16 分类:精选文章

本文共 2081 字,大约阅读时间需要 6 分钟。

Java Log4j 最简用法指南

基本使用方法

1. 下载 Log4j 库

首先,前往 Apache Log4j 官方网站下载最新的 Log4j 库文件。通常,你需要下载对应的 JAR 包,以便在项目中引入使用。

2. 配置 Log4j 属性文件

在你的项目根目录下,创建一个 log4j.properties 文件。根据需求配置日志级别和输出格式。以下是一个示例配置:

log4j.rootLogger=DEBUG, appender1
log4j.appender.appender1=org.apache.log4j.FileAppender
log4j.appender.appender1.File=myproject.log
log4j.appender.appender1.layout=org.apache.log4j.TTCCLayout

3. 使用 Log4j 实现日志记录

在你的 Java 类中导入 Logger 类,并通过静态方法获取日志实例。以下是一个简单的示例代码:

package com.myproject.test;
import org.apache.log4j.Logger;
public class MyTestClass {
private static Logger logger = Logger.getLogger(MyTestClass.class);
public static void main(String[] args) {
System.out.println("Hello world");
logger.info("----交易日志,日志级别 info ----> " + "hello world" + "<--------");
}
}

运行上述代码后,日志将会被记录到 myproject.log 文件中。

进阶使用方法:同时打印到控制台和不同文件

配置多个日志记录目标

为了实现日志同时打印到控制台和不同文件,可以参考以下配置方法:

# 打印到控制台和文件
log4j.rootCategory=DEBUG, console, file
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.err
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n
# 打印到文件
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=test.txt
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n

实现代码

在代码中创建多个 Logger 实例,分别对应不同的日志输出目标。以下是一个示例:

import org.apache.log4j.Logger;
public class Test327Class extends AT_Cmd_Interface {
private static final Logger logger = Logger.getLogger(Test327Class.class);
private static final Logger logger1 = Logger.getLogger("batch1");
private static final Logger logger2 = Logger.getLogger("batch2");
public static void main(String[] args) {
logger.info("cs"); // 打印到 test.txt
logger1.info("cs1"); // 打印到 test1.txt
logger2.info("cs2"); // 打印到 test2.txt
}
}

预期效果

运行上述代码后,将会生成以下文件:

  • test.txt:包含所有 Logger 的日志记录
  • test1.txt:仅包含 logger1 的日志记录
  • test2.txt:仅包含 logger2 的日志记录

这样,你就可以根据需求灵活配置日志记录目标和格式,实现多种日志输出场景。

上一篇:【IntelliJ IDEA 2019.2】java 自写的log打印及读写文件
下一篇:【IntelliJ IDEA 2019.2】vs2008编写C++ dll,被java调用

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2025年04月06日 00时59分53秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章