成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

java中使用log4j如何不用每次調用都聲明一下?

瀏覽:138日期:2023-12-06 14:26:54

問題描述

每次寫個新的類,就要在下面聲明下:

private static Logger logger = Logger.getLogger(Test.class);

這樣的話不是很麻煩嗎?有沒有什么辦法,把Logger設置成可以靜態調用的類,直接調用info,error等方法,同時還可以打印出當前類、線程號等信息?

問題解答

回答1:

你大可以簡單封裝一下實現你要的目的,比如建個類把Logger封裝進去,暴露幾個靜態接口出來。至于為什么很多代碼書寫的時候寫成private static Logger logger = Logger.getLogger(Test.class);,其實主要是為了提高日志的靈活性、準確性等。

回答2:

看看這個 /a/11...

回答3:

聲明log是因為他可以定義不同的logger name可以通過logger name定制自己的輸出方式, 比如level, appender...等

如果你的日志是以相同的方式處理那你完全可以聲明公共的靜態 log 對象, 需要的地方使用該log也不存在重復聲明的情況了.如:

import static xxx.GlobalLogs.log;log.debug('...');log.info('...');//...

當然你還可以使用 lombok 的方式來簡化你的代碼.

標簽: java
相關文章: