一、使用log4j打印日志

對配置信息進行解釋:
這里指定了日志輸出的級別 INFO. 你也可以指定BEBUG、ERROR、 WARN,或者全部指定用CONSOLE
stdout, logfile 指定日志輸出的目的地。 這兩個名字可以隨便取,比如 A, 或B都可以。 實際的配置是 org.apache.log4j.ConsoleAppender 和RollingFileAppender 用於指定是控制台還是文件。
另外還指定了輸出的格式, 已經產生的file 的規則。
log日志文件輸出路徑可以改,我寫的是E:/logfile.log。
1. rootLogger后面跟着輸出日志的級別:
1.1 ERROR 為嚴重錯誤 主要是程序的錯誤
1.2 WARN 為一般警告,比如session丟失
1.3 INFO 為一般要顯示的信息,比如登錄登出
1.4 DEBUG 為程序的調試信息
stdout, logfile 指定日志輸出的目的地。 這兩個名字可以隨便取,比如 A, 或B都可以。
2. appender.moder1定義的是Log輸出的地方:
2.1 org.apache.log4j.ConsoleAppender(控制台)
2.2 org.apache.log4j.FileAppender(文件)
2.3 org.apache.log4j.DailyRollingFileAppender(每天產生一個日志文件)
2.4 org.apache.log4j.RollingFileAppender(文件大小到達指定尺寸的時候產生一個新的文件)
2.5 org.apache.log4j.WriterAppender(將日志信息以流格式發送到任意指定的地方)
3. appender.moder1.Layout定義的是日志信息的格式:
3.1 org.apache.log4j.HTMLLayout(以HTML表格形式布局),
3.2 org.apache.log4j.PatternLayout(可以靈活地指定布局模式),
3.3 org.apache.log4j.SimpleLayout(包含日志信息的級別和信息字符串),
3.4 org.apache.log4j.TTCCLayout(包含日志產生的時間、線程、類別等等信息)
4. 在appender.moder1.Layout下定義的是PatternLayout才有log4j.appender.moder1.layout.ConversionPattern
該屬性自定義日志輸出格式
-X號: X信息輸出時左對齊;
%p: 輸出日志信息優先級,即DEBUG,INFO,WARN,ERROR,FATAL,
%d: 輸出日志時間點的日期或時間,默認格式為ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},輸出類似:2002年10月18日 22:10:28,921
%r: 輸出自應用啟動到輸出該log信息耗費的毫秒數
%c: 輸出日志信息所屬的類目,通常就是所在類的全名
%t: 輸出產生該日志事件的線程名
%l: 輸出日志事件的發生位置,相當於%C.%M(%F:%L)的組合,包括類目名、發生的線程,以及在代碼中的行數。 舉例:Testlog4.main (TestLog4.
%x: 輸出和當前線程相關聯的NDC(嵌套診斷環境),尤其用到像java servlets這樣的多客戶多線程的應用中。
%%: 輸出一個"%"字符
%F: 輸出日志消息產生時所在的文件名稱
%L: 輸出代碼中的行號
%m: 輸出代碼中指定的消息,產生的日志具體信息
%n: 輸出一個回車換行符,Windows平台為"\r\n",Unix平台為"\n"輸出日志信息換行。
5. Threshold是個全局的過濾器,它將把低於所設置的level的信息過濾不顯示出來。
代碼中使用: