使用log4j輸出一個類的所有參數的值

log4j輸出一個類的所有參數的值

項目用到的是日志框架是slf4j+log4j,在使用的過程中,如果要輸出一個元素的值,一般都是這樣寫

logger.info("當前登錄人的姓名是:{}", userinfo.getName());

這樣就會輸出:當前登錄人的姓名是:張三

但是如果我想要輸出一個類userinfo中所有的參數信息,比如說,姓名,年齡,電話等信息,如果這樣就會出問題

logger.info("當前登錄人的所有信息是:{}", userinfo);

這樣的話,隻會輸出userinfo這個類的路徑,包括包名和類名,如果想輸出這個類中元素的所有值,必須這麼寫

logger.info("當前登錄人的所有信息是:{}", JSONObject.toJSONString(userinfo));

JSONObject需要引入import com.alibaba.fastjson.JSONObject;

log4j各參數打印輸出內容

[1]%c [2]%C [3]%d [4]%F [5]%l [6]%L [7]%m [8]%M [9]%n [10]%p [11]%r [12]%t [13]%x [14]%X [15]%%[1]com.xikang.logging.index.Log4jTest [2]com.xikang.logging.index.Log4jTest [3]2012-09-18 14:53:18,015 [4]Log4jTest.java [5]com.xikang.logging.index.Log4jTest.main(Log4jTest.java:20) [6]20 [7]test log4j [8]main [9] [10]INFO [11]0 [12]main [13] [14]{} [15]%

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。

推薦閱讀: