欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Java6學習筆記39——日志操作

系統 1827 0

1.簡介:

ava.util.logging,它可以對程序中的日志記錄進行相當復雜的控制。例如:通過它可以指定日志的級別和日志的位置(控制臺、文件、套接字、 內存緩沖區),也可以創建子記錄器,通過它可以用程序控制的方式來指定想記錄的內容,也可以使用配置文件來指定,而不需要去改動程序。

2.體系:

Java6學習筆記39——日志操作

3.實例:

import java.util.logging.Logger;
import java.util.logging.Level;
import java.util.logging.Handler;
import java.util.logging.FileHandler;
import java.io.IOException;

public class LogDemo3 {
static Logger logger = Logger.getLogger("");
public static void main(String arg[]) {
try {
FileHandler fh = new FileHandler("logfile");
logger.addHandler(fh);
} catch(IOException e) {
System.err.println("Cannot open log file for output");
}

Handler handler[] = logger.getHandlers();
for(int i=0; i<handler.length; i++)
handler[i].setLevel(Level.FINEST);

logger.setLevel(Level.FINEST);

LogDemo3 ld = new LogDemo3();
ld.demonstrate();
}
LogDemo3() {
logger.info("LogDemo3 instantiated.");
}
public void demonstrate() {
logger.fine("Entering the demonstrate method.");
for(int i=0; i<10; i++) {
logger.finest("Loop counter: " + i);
}
logger.fine("Exiting the demonstrate method.");
}
}

4.技巧(轉載)

java . util . logging 包提供了強大的日志輸出功能,正確和有效的使用這些功能需要一些技巧:

  1. 了解不同的 Level , Level .FINE , LEVEL .FINER , LEVEL .FINEST 用來調試和跟蹤程序,比如打印一些調試信息,異常等。 Level .INFO 將打印信息到控制臺。
  2. 使用 Logger.isLoggable( Level ) 方法檢測當前的 Level ,以此來判斷是否輸出日志,日志也應該遵循需要時才輸出的原則,避免生成大量的調試信息字符串,占用系統內存,影響性能。
  3. 必要時程序化的打開和關閉日志,例如在開發程序時開啟大部分日志,為了查錯和調試程序,在程序發布時關閉大部分日志,避免影響客戶和影響程序性能。
  4. 必要時可以針對一個模塊使用唯一的 Logger ,也就是創建 Logger 時傳入子模塊的名字,所有類使用同一個 Logger ,避免生成太多的 Logger 實例。
  5. 下邊是使用日志工具的一段代碼:
package javatest;

import java .io.IOException;
import java . util . logging .ConsoleHandler;
import java . util . logging .FileHandler;
import java . util . logging . Level ;
import java . util . logging .Logger;
import java . util . logging .SimpleFormatter;

/**
*/
public class LoggerTest{
// 構建Logger
private static Loggerlog = Logger.getLogger(LoggerTest. class .getName());

/** CreatesanewinstanceofLoggerTest */
public LoggerTest(){
// 使用此方法避免生成需要輸出的字符串
if (log.isLoggable( Level .FINE)){
log.log( Level .FINE,
" startconstructing... " );
}
}
/**
*設置指定包的日志輸出級別.
*
*
@param packageName指定的包
*
@param fileName指定日志的輸出文件
*
@param level 日志輸出級別
*/
private static void setLogLevel(StringpackageName,StringfileName, Level level ){
try {
FileHandlerfileHandler
= new FileHandler( " %h/ " + fileName + " %u.log " );
fileHandler.setFormatter(
new SimpleFormatter());
ConsoleHandlerconsoleHandler
= new ConsoleHandler();
consoleHandler.setLevel( level );
Logger.getLogger(packageName).addHandler(fileHandler);
Logger.getLogger(packageName).addHandler(consoleHandler);
Logger.getLogger(packageName).setLevel( level );
}
catch (SecurityExceptionex){
ex.printStackTrace();
}
catch (IOExceptionex){
ex.printStackTrace();
}
}
public static void main(String[]args){
// 啟用當前包的全部日志輸出
StringpackageName = " javatest " ;
setLogLevel(packageName,packageName, Level .ALL);
LoggerTesttest
= new LoggerTest();
}
}

Java6學習筆記39——日志操作


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久久久久久久久亚洲 | 97av在线 | 亚洲精品成人 | 午夜插插| 色哟哟哟在线精品观看视频 | 91精品国产综合久久青草 | 日本视频网址 | 丝袜美腿一区二区三区动态图 | 久久久久久国产精品mv | 性爱视频在线免费 | 日韩三级伦理在线 | 国产不卡在线观看视频 | 久久美女精品国产精品亚洲 | 日韩黄色一级大片 | 国产五月色综合 | 欧美激情a∨在线视频播放 中文字幕亚洲图片 | 久久国产精品99久久久久久牛牛 | 秋霞日韩久久理论电影 | 玖玖福利| 一级在线免费视频 | 国产成人在线播放视频 | 福利影院在线看 | 亚洲精品在线看 | 激情婷婷小说 | 亚洲人人| 国产精品成人在线 | 精品久久久久久久人人人人传媒 | 97超级碰碰在线看视频免费超 | 国产欧美成人 | 成人区视频爽爽爽爽爽 | 久久久久亚洲精品中文字幕 | 香蕉啪| 日韩黄色影视 | 日韩视频在线观看免费 | 成人精品一区 | 三级理论中文字幕在线播放 | 免费在线一区二区三区 | 一区二区三区国产好 | 最新高清无码专区 | 国产成人精品一区二区在线 | 免费的黄色一级片 |