我收到 java.lang.NullPointerException 异常,我不确定为什么。我正在尝试使用 try-catch block ,但它不起作用。任何人都可以解释这个 block 有什么问题吗?
public PriceDataAdder(Connection conn) {
try {
this.conn = conn;
statement = conn.prepareStatement("INSERT INTO `blah` (a,b,c,d,e,f,g,h,`i`,j) VALUE( ?,?,?,?,?,?,?,?,?,? )");
} catch (SQLException ex) {
Logger.getLogger(PriceDataAdder.class.getName()).log(Level.SEVERE, null, ex);
}
}
最佳答案
try catch Exception
而不是 SQLException
。它会起作用,因为 Exception
是所有异常的父类(super class),通过捕获它,您可以捕获所有可能在 try
block 内生成的异常。
无论如何,问题可能是因为 conn
在 prepareStatement()
被调用时 null
引起的,首先要确保您正在传递调用 PriceDataAdder
方法的 Connection
的正确实例。
还要查看正在生成的日志,Logger
对象应该得到很好的利用。
关于java - try-catch block 不抑制 java.lang.NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13781129/