我正在编写一个 Java 应用程序,并且我希望为我的异常采用统一的格式。像这样的东西:
try{
//...
} catch(Exception e){
log(clazz.getSimpleName() + ":" + e.getMessage() + ":" + e);
}
这意味着日志中的每个异常都会大致呈现以下方面:
<class_name>.java: <message>: <exception>
我总是可以使用static
方法编写一个“ExceptionDealer
”类,该方法记录接收类名和异常实例本身的异常,但我不确定是否这未免太过分了。
有什么优雅的方法可以做到这一点吗?
最佳答案
您可以抛出自定义异常并登录到构造函数中。
public class CustomException() extends Exception {
public CustomException(Exception ex) {
super(ex);
log(ex.getStackTrace[0].getClassName() + ":" + ex.getMessage());
}
}
然后在你的catch
} catch(Exception e){
throw new CustomException(e);
}
关于java - 统一 Java 中的异常格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42790610/