gpt4 book ai didi

java - 是每个类一个记录器还是一组被整个应用程序访问的记录器?

转载 作者:搜寻专家 更新时间:2023-10-30 21:03:59 24 4
gpt4 key购买 nike

我有一个 Java 项目,我创建了七个记录器,程序的每个点都可以通过外观访问这些记录器。但是在互联网上,我看到很多例子,每个类都有一个记录器。

最推荐的记录方式是什么?

最佳答案

每个类中的记录器更好,更易于扩展。原因是在一个类中定义一个记录器很容易将真正的日志记录 api 与记录器的配置(格式、持久性)分开。我使用过不止一种大型复杂的 Java 软件(> 100 万行代码),它们每个类都使用一个记录器。

此外,“每个类一个记录器”的定义并不意味着每个类使用不同的记录器实例。

class Foo {
private static final Logger log = Logger.getLogger( Foo.class );
}


class Bar {
private static final Logger log = Logger.getLogger( Bar.class );
}

上面代码中引用的两个logger是否使用同一个logger实例尚不清楚。通常,有一个配置位置(在属性文件或代码中)指定 Foo 和 Bar 中的记录器是否共享一个记录器实例。

所以“每个类一个记录器”只是为每个类定义一个记录器,但是这样的记录器可能引用不同类中使用的同一个记录器实例

关于java - 是每个类一个记录器还是一组被整个应用程序访问的记录器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6628677/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com