【发布时间】:2015-07-30 21:11:51
【问题描述】:
我没有受过在 Java 中捕获异常方面的教育,所以这可能是一个微不足道的问题:
我解析了一个 XML 文件,并且在 endElement 的方法中我有:
@Override
public void endElement(String uri, String localName, String qName) throws SAXException {
if (qName.equals("manufacturer")) {
newManufacturer = false;
String venueName = manufacturerBuilder.toString();
event.setVenueName(venueName);
}
}
如果 event 为 null,我的程序会崩溃。我想做的是在这种情况下添加一些指令以有序关闭(关闭数据库连接等)。
当然可以:
try{
event.setVenueName(venueName);
}
catch (NullPointerException e){
db.close();
//etc
}
但是我有许多异常需要在解析器的方法中捕获。难道我不能在解析时在更高级别上尝试捕获任何类型的异常(例如上面的那个)吗?但具体在哪里?
【问题讨论】:
标签: java xml exception-handling try-catch sax