假設,如果我執行一個select查詢(HQL)並且它給出100K行作爲結果。我想知道是否有一種方法來加載Java(或任何其他語言)這些100K的塊在1K塊查詢完成後執行。 我把它分成大塊的原因是 - 我不知道這些100K結果將存儲在哪裏,而我正在用java處理它們。但我想使用較少的內存消耗。加載SELECT查詢的實際數據塊(不再執行相同的查詢)
- 執行查詢(與HQL休眠條件)(假設100K行結果)
- 挑第一1K在它們(而不JVM的存儲器或某處加載其他99K,如遲緩裝載在休眠)
- 過程
- 從(2)
更新 - 我不想再次點擊查詢。 要麼我無法理解任何答案,要麼你的人無法理解我的問題
網上有一些很好的參考資料,比如[this one](http://www.numerati.com/2012/06/26/reading-large-result-sets-with-hibernate-and-mysql /)。 –
我相信你的意思是說,每當我需要結果時,用下一個計數器打數據庫? – user3104225
我的意思是,如果有一種方法來打擊查詢,然後得到結果(主鍵)的指針。並使用這些指針獲得下一組結果(實際數據)。 – user3104225