熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Javascript >> 正文

一個在程序中實現plugin機制的簡單例子

2013-11-23 17:54:10  來源: Javascript 

  在JDK中提供了一個日志記錄包javautillogging它可以對程序中的日志記錄進行相當復雜的控制例如通過它可以指定日志的級別和日志的位置(控制台文件套接字內存緩沖區)也可以創建子記錄器通過它可以用程序控制的方式來指定想記錄的內容也可以使用配置文件來指定而不需要去改動程序和Logj相比它更簡單更輕量級在對日志輸出的要求不是很復雜時它無疑是更好的選擇
  
  首先我們獲得一個LogManager類的一個實例
  
  LogManager lMgr = LogManagergetLogManager();
  
  然後我們創建記錄器並且把它添加到當前的管理器
  
  String thisName = Logpkg;
  
  Logger log = LoggergetLogger(thisName);
  
  lMgraddLogger(log);
  
  如果我們沒有指定日志文件存放的位置則按照jre/lib目錄下loggingproperties文件中指定的內容默認是ConsoleHandler意味著日志信息在控制台顯示
  
  在程序中我們可以按照級別發布日志信息共有個級別SERVER(最高值)WARNINGINFOCONFIGFINEFINERFINEST(最低值)和OFF(不記錄)
  
  logserver(error);
  
  我們可以設置記錄器的記錄級別以忽略低於WARNING級別的消息只有用server和warning記錄的信息才能輸出
  
  logsetLevel(LevelWARNING);
  
  (This message is info);//這條信息會被忽略不會被輸出
  
  logwarning(This message is warning);//這條信息會輸出
  
  Logger的名字可以是簡單的文字也可以是逗號分隔的復合名字一個逗號左邊名字相同但是逗號右邊具有附加名字的記錄器是原型記錄器的子記錄器例如一個叫Logpkg的記錄器和一個叫LogpkgTest的記錄器記錄器和它的子記錄器可以是不同的級別在整個程序中可以只記錄SERVER信息對於一個可疑的部分則可以記錄其他更多的事件
  
  如果想要同時把日志輸出到文件和控制台可以創建一個FileHandler並把它添加到記錄器
  
  fh = new FileHandler(runtimelog);
  
  logaddHandler(fh);
  
  如果沒有特別指定文件格式默認的是XML
  
  通過配置文件來控制日志記錄
  
  FileInputStream fi = new FileInputStream(new File(loggingproperties));
  
  lMgrreadConfiguration(fi);
  
  這樣做的好處是不需要改變或重新編譯程序就可以改變日志記錄的狀態
  
  配置文件的格式
  
  handlers = javautilloggingFileHandlerjavautilloggingConsoleHandler
  
  Level = INFO
  
  javautilloggingConsoleHandlerpattern = runtimelog
  
  javautilloggingConsoleHandlerlimit =
  
  javautillogginunt =
  
  javautilloggingConsoleHandlerformatter = javautilloggingXMLFormatter
  
  javautilloggingConsoleHandlerlevel = WARNING
  
  javautilloggingConsoleHandlerformatter = javautilloggingSimpleFormatter
  

From:http://tw.wingwit.com/Article/program/Java/Javascript/201311/25317.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.