2
我正在使用關閉自動提交的JDBC Connection
。在我的清理方法中,我想檢查以確保沒有正在進行的事務,但我看不到任何獲取此信息的方式。如何在JDBC Connection
的情況下查明事務是否正在進行?如何判斷JDBC是否正在執行事務?
更新
雖然沒有在JDBC的本身,Tomcat的JDBC連接池具有攔截器的概念,我想知道,如果一個人可以寫在該級別跟蹤交易。
我正在使用關閉自動提交的JDBC Connection
。在我的清理方法中,我想檢查以確保沒有正在進行的事務,但我看不到任何獲取此信息的方式。如何在JDBC Connection
的情況下查明事務是否正在進行?如何判斷JDBC是否正在執行事務?
更新
雖然沒有在JDBC的本身,Tomcat的JDBC連接池具有攔截器的概念,我想知道,如果一個人可以寫在該級別跟蹤交易。
JDBC連接沒有任何幫助方法來知道狀態,但是如果您可以獲取javax.transaction.UserTransaction,則可以使用「getStatus」方法查找狀態。更多關於oracle site的信息。
當您使用JDBC而沒有任何其他事物(如分佈式事務)時,則不存在UserTransaction。 –
我試圖避免交易經理,如果可能的話,因爲他們對我來說是不必要的開銷。雖然沒有明顯的方法可以乾淨地完成這項工作,但只要連接關閉,我最終可能只是提交。 – jgm