根据 Spring Framework 文档,日志记录是 Spring 唯一的强制依赖项。它默认使用 Apache Commons Logging,也可以配置为使用 SLF4J 或 Log4J。我的问题是关于我使用 Spring 编写的应用程序,而不是使用不同的记录器类并在我的应用程序中实例化一个新的记录器对象,是否有可能获得对 Spring 自身使用的记录器的引用?
最佳答案
当然 - 记录器仅按名称引用。因此,如果 Spring 使用“org.springframework.beans.abc”(例如)作为记录器名称,您也可以请求同名的记录器。 (Spring 不会只使用一个记录器/名称进行记录 - 它会使用多个记录器/名称,具体取决于你在 Spring 中使用的是什么 - 它应该这样做。)
但是,我强烈建议不要这样做。实例化一个新的记录器对象的成本应该是最小的——这样做的任何节省都将被这样做的额外困惑所抵消。 Spring 记录到 Spring 记录器名称。您的代码应记录到您的代码唯一的记录器名称。否则,如果记录了某些内容,您如何知道它是来自 Spring 代码还是您的代码?这将完全破坏记录器/类别名称的目的。
关于java - 是否有可能获得对 Spring 正在使用的记录器的引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8936070/