簡體   English   中英

無法從記錄器對象調用方法“錯誤”。

[英]Not able to call method “error” from the logger object.

package firstAOP;

import java.util.logging.Logger;

public class OrderDAO
{
    private final static Logger logger = Logger.getLogger(OrderDAO.class.getName()); 
    public boolean saveOrder(Order order)
    {
        boolean flag =false;


        try
        {
           //functional code
            flag = true;
        }
        catch(Exception e)
        {
            logger.error(e);            
        }        
        return flag;
    }
}

在上面的代碼中,我在“logger.error(e)”行中收到錯誤。這是錯誤:方法錯誤()未定義類型Logger

其余的方法如logger.info正在運行。

如果問題不是太多,請告訴我是否正確地聲明了記錄器。 如果我寫下會發生什么:

private final static Logger logger = Logger.getLogger(SaveOrder.class.getName()); 

SaveOrder是同一個包中的另一個類。

您正在使用java.util.logging.Logger,並且此記錄器沒有error()方法。

要么使用

Logger.log(Level, String);
Logger.log(Level, String, Throwable);

使用java.util.logging.Level中定義的某個級別

要么

Logger.severe(String);

......到你的第二個問題:

記錄器聲明良好。

如果您將記錄器聲明更改為

 private final static Logger logger = Logger.getLogger(SaveOrder.class.getName());

然后記錄器將有另一個名稱。 配置日志記錄系統時使用該名稱。 我建議您閱讀Java Logging Overview,並在有關於Java日志記錄系統的特定問題時回來。

另一種選擇:

請嘗試以下添加導入:

import org.apache.log4j.Logger;

並刪除

import java.util.logging.Logger;

LOG.error(e.getMessage(),e);

另一個例子 :

LOG.error("Error in loading the product data for Mass Request : =  "  + requestId);

信息級別日志記錄的示例:

LOG.info("Loading the product data...for " + requestId);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM