首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >跨多个类使用java.util.logging

跨多个类使用java.util.logging
EN

Stack Overflow用户
提问于 2017-09-26 15:22:15
回答 1查看 1.7K关注 0票数 1

我找到了使用java.util.logging online 这里的示例。我不明白如何修改它以跨多个类使用示例

我会在每堂课上都声明这个吗?

代码语言:javascript
复制
Logger logger = Logger.getLogger(Logger.GLOBAL_LOGGER_NAME);  

同样在类中,它们提供了一个语法错误:

代码语言:javascript
复制
// suppress the logging output to the console
Logger rootLogger = Logger.*getLogger*("");

找到根记录器的正确方法是什么?

代码语言:javascript
复制
package com.vogella.logger;

import java.io.IOException;
import java.util.logging.FileHandler;
import java.util.logging.Formatter;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.logging.SimpleFormatter;

public class MyLogger {
    static private FileHandler fileTxt;
    static private SimpleFormatter formatterTxt;

    static private FileHandler fileHTML;
    static private Formatter formatterHTML;

    static public void setup() throws IOException {

        // get the global logger to configure it
        Logger logger = Logger.getLogger(Logger.GLOBAL_LOGGER_NAME);

        // suppress the logging output to the console
        Logger rootLogger = Logger.*getLogger*("");
        Handler[] handlers = rootLogger.getHandlers();
        if (handlers[0] instanceof ConsoleHandler) {
            rootLogger.removeHandler(handlers[0]);
        }

        logger.setLevel(Level.INFO);
        fileTxt = new FileHandler("Logging.txt");
        fileHTML = new FileHandler("Logging.html");

        // create a TXT formatter
        formatterTxt = new SimpleFormatter();
        fileTxt.setFormatter(formatterTxt);
        logger.addHandler(fileTxt);

        // create an HTML formatter
        formatterHTML = new MyHtmlFormatter();
        fileHTML.setFormatter(formatterHTML);
        logger.addHandler(fileHTML);
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-26 15:36:27

。如链接的Javadoc中所述,使用名字作为日志记录,使用来自每个类的全局记录器。尽管用处不大,因为它是一个默认的java记录器。

GLOBAL_LOGGER_NAME是全局记录器的名称。这个名称是为了方便那些临时使用日志包的开发人员. 获取全局记录器对象的首选方法是通过调用Logger.getLogger(Logger.GLOBAL_LOGGER_NAME)

它也是Logger.getGlobal()与早期jdk版本的替代版本。

若要配置根记录器,请使用:-

代码语言:javascript
复制
Logger logger = Logger.getLogger("");
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46430342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档