自己整合了一下jpa和jdbc的时候,出现了这样的错误。细细的查了下,发现问题是出在statement.close()的时候。
因为Connection已经关闭了,如果在关闭statement,就会报错。
原因是Connection关闭的时候,会同时关闭statement和resultset.这个得注意一下。
所以判断statement是否关闭完全无必要,只需要保证Connection关闭之前,关闭statement就可以了。这个错误就可以避免掉了。
finally {
if(!conn.isClosed())
{
stmt.close();
conn.close();
}
}