我想寫一個java函數,它接受一個SQL查詢並返回一個ResultSet在其他地方處理。這是無法完成的,因爲一旦連接關閉,ResultSet就會死亡。CachedRowSet:它仍然可以用來保存ResultSet數據嗎?
谷歌搜索我發現一個VERY OLD (2004) OReilly article有東西看起來像治癒:CachedRowSet。您只需放入ResultSet,CachedRowSet保存數據,讓您關閉連接並使用返回的CachedRowSet在別處播放數據。
本文引用了Sun提供的CachedRowSet的實現,它似乎無處可尋。
現代javadocs(用於Java 1.5及更高版本)似乎有一些同名的「CachedRowSet」,它不僅僅是ResultSet數據的持有者。這個「CachedRowSet」似乎是通過獲取連接和其他一切來完成整個數據庫處理。
這就是「CachedRowSet」與舊文章中討論過的相同嗎?
我想要簡單的東西,就像在老文章中一樣。在連接關閉後將某個ResultSet放入進行處理。
有沒有這樣的動物?
由於
MBFG;我使用的是Oracle,我希望將此作爲臨時措施,同時清理一些遺留代碼並學習更好的數據處理方式(數據庫框架等)。我無法找到關於從哪裏得到它的方法,以及如何使用它。任何超出谷歌搜索的線索? – Steve 2012-04-27 00:01:17
如何使用pojos替換獲取「ResultSet」以滾動獲取它的函數的外部? – Steve 2012-04-27 00:02:19
是什麼讓你認爲'com.sun.rowset.CachedRowSetImpl'不受支持? [CachedRowSet接口](http://docs.oracle.com/javase/7/docs/api/javax/sql/rowset/CachedRowSet。html)在Java 7中,它的javadoc聲明「Oracle公司提供的CachedRowSet接口的參考實現是一個標準實現,開發人員可以使用這個實現」。參考實現是'com.sun.rowset.CachedRowSetImpl';這聽起來並不支持我。 – 2012-06-22 16:27:12