大家好,我知道这是一个老问题,但今天只是好奇。正如我们所知,connection.close 也会关闭preparedStatement(如果我错了,请纠正我)。但是如果我关闭连接然后关闭preparedStatement怎么办
conn.close();
ps.close();
我会得到一个空指针异常吗?
有人说取决于你的jvm速度。有时 ps.close() 会在 conn.close 完成他的工作之前先运行并关闭,所以你不会得到空指针。
为了测试,我修改了代码
conn.close();
Thread.sleep(5000);//I give 5s to conn.close to finish his work. should be enough
ps.close();
但我没有得到空指针。
所以我的问题是,如果我先关闭 conn 然后关闭 ps,这里会发生什么。
谢谢大家。