簡體   English   中英

Java-使用功能接口和Lambda表達式進行日志記錄

[英]Java - using functional interface and lambda expression to do logging

我們進行日志記錄的傳統方法是:

if (logger.isDebugEnabled()) {
    logger.debug("something to log, and barbarbar {}", object);
}

但是,使用lambda表達式進行記錄以減少代碼行和復雜度又如何呢?

logger.debug(() -> return "something to log, and barbarbar " + object);

slf4j或其他記錄器沒有任何理由不提供這種方式進行記錄嗎? 對象創建開銷造成的?

我們做日志的傳統方法是...

在每個用例中都沒有必要使用條件logger.isXXXXEnabled() 僅在記錄需要大量時間才能創建的對象時使用。 例如,當您需要將某些數據庫查詢或轉換為XML / JSON的復雜結構的結果記錄到日志中時。

在其他情況下,此檢查過多。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM