gpt4 book ai didi

java - 如何通过构造函数中的依赖注入(inject)而不使用框架来应用记录器

转载 作者:行者123 更新时间:2023-12-03 21:45:34 29 4
gpt4 key购买 nike

我正在做没有框架(没有 spring/guice)的依赖注入(inject),只是普通的 java(我需要)。我的问题是关于记录器记录器呢?我通常在

中实例化它
private static logger = Logger.getLogger(myclass); 

但这不是依赖注入(inject),我应该将记录器传递给每个构造函数吗?这看起来很奇怪……那么如何处理记录器和依赖注入(inject)呢?

PS 我更喜欢使用 ctor 而不是 setter 的 DI,这样我很清楚我的类(class)需要什么。

谢谢

最佳答案

一种解决方案是使用外观框架,例如 slf4j . Logger.getLogger(...) 然后实际上是获取日志库并使用它。更改日志库是一个简单的配置问题。

The Simple Logging Facade for Java or (SLF4J) serves as a simple facade or abstraction for various logging frameworks, e.g. java.util.logging, log4j and logback, allowing the end user to plug in the desired logging framework at deployment time.

所以它与使用 DI 非常相似,但在这种情况下可能更合适。

关于java - 如何通过构造函数中的依赖注入(inject)而不使用框架来应用记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14156957/

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