如果我要分發一個特定的框架,如可以在許多項目中使用的自定義驗證框架,我該如何在此框架中處理日誌記錄,以便它使用與其中的項目相同的日誌記錄方法正在使用?即我已經用通常的調試,警告,信息...方法編寫了一個記錄器接口,並且此接口的實現可以使用log4j或任何其他記錄方法來實現這些方法。如果我將它作爲jar分發,那麼不同的項目如何使用這個jar與他們的日誌框架?Java日誌接口
Q
Java日誌接口
1
A
回答
4
我強烈建議您不要編寫另一個日誌記錄框架來重新編碼您的應用程序,而是使用SLF4J日誌記錄API。所有與其他日誌記錄實現接口的工作已經完成,並且在業界衆所周知。
另外一個好處是,你得到{} -placeholders,它允許你只是做
log.debug("a={}, b={}", a, b);
和a.toString()和b.toString()時,該字符串將實際上只被調用爲已記錄。這允許大量的日誌語句,除非您需要它們在調試設置中運行,否則這些日誌語句不會被真正執行。
+0
日誌記錄框架中的難點在於確保日誌記錄時的良好性能,以及不記錄時的卓越性能。 –
0
有些庫提供了log4j,java.util.logging等抽象層。它們充當'接口',然後使用你的項目的人可以使用他們選擇的實現。看看Apache Commons Logging和SLF4J。
相關問題
- 1. 日誌記錄接口活動 - Java
- 2. 從庫中暴露日誌接口
- 3. Qtestlib日誌窗口
- 4. Java日誌/ openVMS
- 5. java日誌記錄/日誌服務器
- 6. MSI日誌調試日誌接收器
- 7. 小日誌與大日誌:通過Java日誌記錄
- 8. Java日誌記錄:它是日誌還是日誌記錄器?
- 9. Java日誌==> JTextArea
- 10. 定期java日誌
- 11. Java加密日誌
- 12. Java Spring MVC日誌
- 13. 日誌 - vb.net到java
- 14. Python日誌時間窗口
- 15. 監視ForwardedEvents窗口日誌
- 16. SmartGit:日誌窗口很慢
- 17. 窗口工作日誌
- 18. 日食 - Java堆錯誤在接口
- 19. Java-接口使用接口
- 20. java中的接口接口
- 21. 輸出當前會話日誌到日誌窗口和文件
- 22. 將日誌控制檯輸出到日誌文件Java日誌程序
- 23. Java日誌記錄器Spring
- 24. 詳細的Java GC日誌
- 25. Filebeat與Java日誌appender
- 26. Java日誌記錄 - slf4j,log4j
- 27. Elasticsearch(Java)的禁用日誌
- 28. 如何查看Java日誌?
- 29. JAVA - 網絡日誌文件
- 30. Azure Java Tomcat日誌記錄
你爲什麼要重新發明輪子?有[SLF4J](http://www.slf4j.org/)。 –