日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

JDBC 4.0鲜为人知的Clob.free()和Blob.free()方法

發布時間:2023/12/3 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JDBC 4.0鲜为人知的Clob.free()和Blob.free()方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在會議上談論jOOQ時,我總是展示此幻燈片,其中包含許多人們經常犯的非常常見的JDBC錯誤:

此圖中的六個常見的JDBC錯誤

您可以找到錯誤嗎? 其中一些是顯而易見的,例如:

  • 第4行:由于第3行的連接不正確而導致的語法錯誤
  • 第7行:由于變量內聯導致的語法錯誤和SQL注入風險
  • 第8行:由于第3行潛在的不匹配而導致的綁定索引錯誤
  • 第14行:由于草率的重命名而導致了錯誤的列名
  • 第18行:不良的資源管理

但是,還有另一個非常細微的錯誤,大多數人沒有意識到,因為該修復僅在Java 6 / JDBC 4.0升級之后才可能進行。 請參閱下面的解決方案:

解決前六個錯誤

  • 第15行:不調用Clob.free()

在JDBC 4.0中, Clob.free()了Clob.free()和Blob.free()方法。 盡管調用它們是可選的,但最好不要盡早調用它們,因為您不應該依賴垃圾收集器來盡早釋放這些資源,這可能是一個非常糟糕的主意。 實際上,在某些數據庫/ JDBC驅動程序中,LOB可能會超出單個語句和/或事務的壽命。 他們是自己的野獸。 如果您正在閱讀JDBC教程 (以及JDBC規范中的內容 ),則會顯示:

Blob,Clob和NClob Java對象至少在創建它們的事務期間保持有效。 在長時間運行的事務中,這可能導致應用程序資源不足。

對于數組也是如此,自Java 6 / JDBC 4.0開始,數組也具有Array.free()方法。

因此,如果您的應用程序具有長期運行的事務,請調用這些free()方法,或者養成始終調用它們的習慣。 我們將向FindBugs提交問題,以使其成為潛在的錯誤模式 。

參考: JDBC 4.0的鮮為人知的Clob.free()和Blob.free()方法(來自JAVA,SQL和JOOQ博客的JCG合作伙伴 Lukas Eder)。

翻譯自: https://www.javacodegeeks.com/2014/02/jdbc-4-0s-lesser-known-clob-free-and-blob-free-methods.html

總結

以上是生活随笔為你收集整理的JDBC 4.0鲜为人知的Clob.free()和Blob.free()方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。