1 import java.util.*;
           2 import java.io.*;
           3 import org.apache.log4j.Logger;
           4 import org.apache.log4j.BasicConfigurator;
           5 import org.apache.log4j.PropertyConfigurator;
           6 import org.apache.log4j.Priority;
           7 
           8 public class TestLog4j
           9 {
          10     protected TestLog4j ()
          11     {        
          12        String path = System.getProperty ("user.dir",".");
          13        System.out.println("!!!!"+path);
          14         path += "\\..\\source\\TestLog4j\\log4j.properties";
          15         System.out.println ("???"+path);
          16         PropertyConfigurator.configure (path);
          17         Logger log = Logger.getLogger (getClass().getName ());
          18         log.info ("test in TestLog4j.java ");
          19       //  return logger;
          20     }
          21 }
          22 

          log4j的使用非常廣泛。在這個程序中程序讀取配置文件,配置文件內容如下:
           1 #log4j.rootLogger = DEBUG, A1
           2 log4j.rootLogger = INFO, A1
           3 #log4j.appender.A1 = org.apache.log4j.ConsoleAppender
           4 log4j.appender.A1 = org.apache.log4j.FileAppender
           5 #可以滾動
           6 log4j.appender.A1 = org.apache.log4j.RollingFileAppender
           7 log4j.appender.A1.File = c:\\example.log
           8 #到500k則將新建gisWS1.log 依此類推
           9 log4j.appender.A1.MaxFileSize=500KB
          10 #最多允許建立10個這樣的日志文件,當gisWS10.log滿500k 則重新覆蓋example1.log
          11 log4j.appender.A1.MaxBackupIndex=10
          12 log4j.appender.A1.layout = org.apache.log4j.PatternLayout
          13 #log4j.appender.A1.layout.ConversionPattern = %-4r [%t] %-5p %%- %m%n
          14 log4j.appender.A1.layout.ConversionPattern = [%d] [%t] %m%n

          配置文件的含義如注釋所言。
          log4j使用了單態設計模式,所以在同一個項目,的另外一個程序中也要打印日志。直接可以用:
          1 Logger logger = Logger.getLogger (Main.class.getName ());
          2         logger.debug ("Start of the main() in TestLog4j");
          3         logger.info ("Just testing a log message with priority set to INFO");
          4         logger.warn ("Just testing a log message with priority set to WARN");
          5         logger.error ("Just testing a log message with priority set to ERROR");
          6         logger.fatal ("Just testing a log message with priority set to FATAL");
          7         logger.log (Priority.WARN, "Testing a log message use a alternate form");
          8         logger.debug (TestLog4j.class.getName ());
          這樣日記配置全局起作用,日志也寫到一個地方的。
          雖然隨JDK版本的升高,已經帶有非常好用的日志記錄API類,但是log4j的使用已經深入人心。掌握log4j的使用是非常有必要的。
          posted on 2007-02-06 16:31 -274°C 閱讀(918) 評論(0)  編輯  收藏 所屬分類: JAVA

          常用鏈接

          留言簿(21)

          隨筆分類(265)

          隨筆檔案(242)

          相冊

          JAVA網站

          關注的Blog

          搜索

          •  

          積分與排名

          • 積分 - 916111
          • 排名 - 40

          最新評論

          主站蜘蛛池模板: 湄潭县| 岳阳市| 思南县| 方城县| 武强县| 顺平县| 岫岩| 海宁市| 武汉市| 泽库县| 巴彦县| 于都县| 罗平县| 曲松县| 和静县| 读书| 定西市| 三原县| 永福县| 儋州市| 武汉市| 镇江市| 布尔津县| 叶城县| 万宁市| 德惠市| 裕民县| 海丰县| 平顶山市| 游戏| 屏山县| 敦化市| 页游| 苍山县| 宁城县| 鹤壁市| 苍溪县| 贵南县| 山西省| 秦皇岛市| 蒙自县|