Log.isDebugEnabled()使用場景


  

  由於代碼中部分日志想只在Debug模式下才打印出來,如果是Info模式就會顯得太多了。所以很自然的就想到直接LOG.debug(……)。但是看到了以前一個大牛的代碼,發現打印debug的時候都加了一層判斷,就是Log.isDebugEnabled(),看着很奇怪,既然已經是Debug模式,為什么還需要加這么一層判斷呢??

  自己搜索了一下,原來這個問題別人也注意過,給出了這樣的回答,就是當要打印的debug信息比較復雜,比如我的就是,要把整個List打印出來,這時候就適合加Log.isDebugEnabled()判斷,原因如果不加,LOG還是會構造里面的串,如果比較復雜,構造了卻不打印,很浪費。所以這個時候最好加一層判斷。

  當然,如果里面就是一個簡單的字符串,還是可以直接LOG.debug(……)而不需加判斷的。

  最后,記住這種使用模式:

if (LOG.isDebugEnabled()) {
    LOG.debug("Input Object/List/Map:" + Object/List/Map);
}

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM