我创建了一个测试程序,该程序创建了20个线程,然后这些线程将打开许多sql连接。假设您正在从eclipse执行此程序,现在要关闭eclipse。这会关闭所有打开的sql连接吗?如果没有,那么这些会发生什么?它会在数据库侧显示100个打开的连接吗?如果是,那么在这种情况下该怎么办?
连接不会像在调用中那样关闭java.sql.Connection.close()
。基本上,打开连接的JVM无法使与数据库的TCP / IP连接保持活动状态。这些将立即关闭。因此,“连接”也将被关闭。但是,数据库可能不会对此立即做出反应并使它的会话保持一段时间。
在Oracle中,如果您有足够的特权,则可以直接终止数据库中的会话。
我想,行为是特定于供应商和/或特定于配置的。没有普遍的答案。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句