您好,登錄后才能下訂單哦!
在很多情況下,我們都會使用 SLF4J 來定義日志。
那么如何定義一個 Logger 呢?
相信絕大部分人都會定義為:
private static final Logger logger = LoggerFactory.getLogger(BigDecimalDemoUnitTest.class);
但是我們為什么要使用 private static final 來進行修飾呢?
private – 沒有其他類可以劫持你的日志
static – 因為使用了靜態,所以每一個類就只有一個日志,同時可以避免嘗試序列化日志
final – 在類的生命周期中,不需要修改日志
同時,你可以定義變量 log 來替代 logger,這樣能夠減少輸入的字符數。當然這個也需要根據你的項目要求來定了。
當然還有下面的一種情況,考察日志代碼:
protected final Logger log = LoggerFactory.getLogger(getClass());
上面有關日志的定義與我們的規則是完全相反的。
上面的代碼允許你在所有具有繼承關系的類中使用相同的日志名(與實際的類名相同)。
例如:
如果類 Bar Extends Foo,那么上面 2 個類的日志將會 log 到 Bar logger 中。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。