Java 中自帶的日志系統(tǒng),今天抽空了解了一點(diǎn),算是入了門,所以將自己的一些心得記錄下來(lái),以備日后查看,有興趣的朋友,看到此文章,覺得有錯(cuò)誤或需要添加的地方,請(qǐng)?jiān)谙路皆u(píng)論留言,大家可以共同進(jìn)步,謝謝:)
Java中關(guān)于日志系統(tǒng)的API,在 java.util.logging 包中,在這個(gè)包中,Logger類很重要。
Logger類是用來(lái)記錄 某個(gè)級(jí)別的日志消息:
級(jí)別共分為以下幾類,從上倒下,級(jí)別依次下降:
SEVERE(嚴(yán)重)------級(jí)別最高
WARNING(警告)
INFO
CONFIG
FINE
FINER
FINEST------最低值
另外,還有一個(gè)級(jí)別 OFF,可以用來(lái)關(guān)閉日志;使用級(jí)別 ALL,啟用所有消息的日志記錄。(日志消息級(jí)別,可以查看 java.util.logging.Level類)
具體記錄日志的方法,查看此類的API文檔,在此就不詳述了。
Logger記錄的日志消息會(huì)被轉(zhuǎn)發(fā)到已注冊(cè)的Handler對(duì)象,handler對(duì)象可以將消息發(fā)送到:控制臺(tái),文件,網(wǎng)絡(luò)等等。
Handler類(抽象類):主要用于轉(zhuǎn)發(fā)日志消息
Hanlder類下有2個(gè)子類:MemoryHandler、StreamHandler。
StreamHandler下有3個(gè)子類:ConsoleHandler(將日志消息打印到控制臺(tái))、FileHandler(將日志消息輸出到文件)、SocketHandler(將日志發(fā)送到網(wǎng)絡(luò)中的某個(gè)主機(jī))。具體詳情,查看API文檔。
Formatter類(抽象類):主要用于格式化日志記錄消息。
有2個(gè)子類:SimpleFormatter(純文本形式), XmlFormatter(XML形式)
下面一起來(lái)寫一個(gè)測(cè)試程序吧:
/**
* DateAndTime: 2016-12-8下午10:37:18
*/
package chapter07;
import java.io.IOException;
import java.util.logging.FileHandler;
import java.util.logging.Logger;
/**
* @author Administrator
* 將日志記錄寫入到文件中
*
*/
public class TestLoggingToFile {
public static void main(String[] args) throws SecurityException, IOException {
//日志記錄器
Logger logger = Logger.getLogger("chapter07");
//日志處理器
FileHandler fileHandler = new FileHandler("d:\\test.txt");