无法从记录器对象调用方法"错误".

Nic*_*Div 3 java java.util.logging

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;
    }
}
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,我在"logger.error(e)"行中收到错误.这是错误:方法错误()未定义类型Logger

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

如果问题不是太多,请告诉我是否正确地声明了记录器.如果我写下会发生什么:

private final static Logger logger = Logger.getLogger(SaveOrder.class.getName()); 
Run Code Online (Sandbox Code Playgroud)

SaveOrder是同一个包中的另一个类.

Ren*_*ink 5

您正在使用java.util.logging.Logger,此记录器没有error()方法.

要么使用

Logger.log(Level, String);
Logger.log(Level, String, Throwable);
Run Code Online (Sandbox Code Playgroud)

使用java.util.logging.Level中定义的某个级别

要么

Logger.severe(String);
Run Code Online (Sandbox Code Playgroud)

......到你的第二个问题:

记录器声明良好.

如果您将记录器声明更改为

 private final static Logger logger = Logger.getLogger(SaveOrder.class.getName());
Run Code Online (Sandbox Code Playgroud)

然后记录器将有另一个名称.配置日志记录系统时使用该名称.我建议您阅读Java Logging Overview,并在有关于Java日志记录系统的特定问题时回来.