2012-10-08 68 views

回答

4

這最可能的原因是您的應用程序正在使用連接池。如果是這樣,游泳池將抓住連接並保持其一部分打開,以便它們可以重複使用。連接將顯示爲IDLE,直到執行另一個命令或關閉應用程序。

如果沒有關閉連接,您可能會看到類似於IDLE的事情 - 在事務中,這意味着連接處於打開狀態,正在等待執行提交或回滾,但沒有收到任何命令。另外,我知道你說你關閉了連接,所以我不確定這是否適用於你,但我只是想拋出,我也沒有明確地關閉PreparedStatements以前遇到過問題。

+1

請注意,大多數連接池爲您提供了一個Connection實例,其「close()」方法不會關閉底層連接,只是簡單地將其返回給池以便可以重新使用。您可能需要配置您的池以在有限的時間內保持空閒連接。 – Matt