我想記錄我的Java應用程序的日誌。 我創建了這個類:Java記錄器問題
public class Log {
final Logger logger = Logger.getLogger("DigiScope.log");
public static void main(String[] args) {
}
public Log(String message) {
try {
// Create an appending file handler
boolean append = true;
FileHandler handler = new FileHandler("my.log", append);
// Add to the desired logger
Logger logger = Logger.getLogger("com.mycompany");
logger.addHandler(handler);
logger.info(message);
} catch (IOException e) {
}
}
}
併爲每個按鈕我有一個這樣的代碼:
private void btnNewPatient ActionPerformed(java.awt.event.ActionEvent evt) {
Log a = new Log("New Patient created");
}
此代碼創建一個log.txt的,但只記錄第一個按鈕的點擊,其他人點擊其他按鈕不記錄。
你能幫我嗎?
謝謝。
待辦事項你在其他按鈕上有一個處理程序,就像你在第一個按鈕上做的那樣?另外,第二塊中的代碼與源代碼中的完全相同嗎?這看起來不會編譯。 – justkt 2011-03-17 15:16:30
你在使用java.util.logging嗎?無論如何,每次單擊按鈕時都不應創建並向記錄器添加處理程序。您應該添加處理程序一次(通過配置或代碼),並且每次單擊使用記錄器記錄消息。 – 2011-03-17 15:19:53
這不是打算使用Logging API的方式。你應該在你的類中有一個'static final'成員字段'logger',從動作監聽器調用'logger.info',並且有一個logging.properties配置記錄的消息到文件中去。有沒有理由不堅持你的情況? – 2011-03-17 15:20:26