Java日志系统---Logger之简单入门

时间:2023-03-09 08:03:22
Java日志系统---Logger之简单入门

Java 中自带的日志系统,今天抽空了解了一点,算是入了门,所以将自己的一些心得记录下来,以备日后查看,有兴趣的朋友,看到此文章,觉得有错误或需要添加的地方,请在下方评论留言,大家可以共同进步,谢谢:)

Java中关于日志系统的API,在 java.util.logging 包中,在这个包中,Logger类很重要。

Logger类是用来记录 某个级别的日志消息:

  级别共分为以下几类,从上倒下,级别依次下降:

    SEVERE(严重)------级别最高

    WARNING(警告)

    INFO

    CONFIG

    FINE

    FINER

    FINEST------最低值

    另外,还有一个级别 OFF,可以用来关闭日志;使用级别 ALL,启用所有消息的日志记录。(日志消息级别,可以查看 java.util.logging.Level类)

    具体记录日志的方法,查看此类的API文档,在此就不详述了。

  Logger记录的日志消息会被转发到已注册的Handler对象,handler对象可以将消息发送到:控制台,文件,网络等等。

Handler类(抽象类):主要用于转发日志消息

  Hanlder类下有2个子类:MemoryHandler、StreamHandler。

  StreamHandler下有3个子类:ConsoleHandler(将日志消息打印到控制台)、FileHandler(将日志消息输出到文件)、SocketHandler(将日志发送到网络中的某个主机)。具体详情,查看API文档。

Formatter类(抽象类):主要用于格式化日志记录消息。

  有2个子类:SimpleFormatter(纯文本形式), XmlFormatter(XML形式)

  

下面一起来写一个测试程序吧:

/**
* DateAndTime: 2016-12-8下午10:37:18
*/
package chapter07;

import java.io.IOException;
import java.util.logging.FileHandler;
import java.util.logging.Logger;

/**
* @author Administrator
* 将日志记录写入到文件中
*
*/
public class TestLoggingToFile {

public static void main(String[] args) throws SecurityException, IOException {
//日志记录器
Logger logger = Logger.getLogger("chapter07");
//日志处理器
FileHandler fileHandler = new FileHandler("d:\\test.txt");

//需要记录的日志消息

LogRecord lr = new LogRecord(Level.INFO, "This is a text log.");

//为处理器设置日志格式:Formatter

SimpleFormatter sf = new SimpleFormatter();

fileHandler.setFormatter(sf);
//注册处理器
logger.addHandler(fileHandler);
//记录日志消息
logger.log(lr);

}

}

当然,如果把 SimpleFormatter 改成 XmlFormatter,记录的消息是xml形式,在此就不贴代码了,各位看官可以自己试试,哈哈哈:)

以上就是,Java日志系统的简单入门了,赶快拿起旁边的键盘,敲着试试吧:)