我正在创建一个小型Java框架,它将记录其事件.我不希望框架依赖于任何特定的日志记录实现(jul,commons logging,log4j,slf4j,logback等).相反,我想让我的客户选择他们喜欢的任何东西.
问题是 - 我应该如何实现这种脱钩?我的框架应如何记录其事件?
slf4j旨在解决这个问题:它将API与日志记录实现分离.
slf4j本身不是一个日志记录实现.这取决于后端实现的存在.Logback恰好在本地实现了slf4j API,但是有log4j,java.util.Logging等的绑定.
在某种程度上,您必须拥有供您的客户使用的API.您也可以将其作为现有API之一,而不是编写自己的API.