Job*_*ith 5 java database-connection jdbc prepared-statement
大家好,我知道这是一个古老的问题,但今天只是好奇.我们知道connection.close也将关闭preparedStatement(如果我错了,请纠正我).但是如果我关闭连接然后关闭preparedStatement会怎样
conn.close();
ps.close();
Run Code Online (Sandbox Code Playgroud)
我会得到一个nullpointer异常吗?
有人说是取决于你的jvm速度.有时ps.close()会先跑,然后先关闭conn.close完成他的工作,所以你不会得到nullpointer.
为了测试它,我修改了代码
conn.close();
Thread.sleep(5000);//I give 5s to conn.close to finish his work. should be enough
ps.close();
Run Code Online (Sandbox Code Playgroud)
但我没有得到nullpointer.
所以我的问题是这里发生的事情,如果我首先关闭conn然后ps.
谢谢大家.
JavaDoc forStatement.close()状态:
close在Statement已经关闭的对象上调用该方法无效。
我建议这意味着如果您的语句已经通过调用Connection.close().
| 归档时间: |
|
| 查看次数: |
2701 次 |
| 最近记录: |