Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

स्प्रिंग JDBC समर्थन और बड़े डेटासेट

Oracle JDBC ड्राइवर के पास setFetchSize() . के लिए उचित समर्थन है java.sql.Statement पर विधि , जो आपको यह नियंत्रित करने की अनुमति देता है कि ड्राइवर एक बार में कितनी पंक्तियाँ लाएगा।

हालांकि, RowMapper जैसा कि स्प्रिंग द्वारा उपयोग किया जाता है, प्रत्येक पंक्ति को मेमोरी में पढ़कर, RowMapper . प्राप्त करके काम करता है इसे किसी वस्तु में अनुवाद करने के लिए, और प्रत्येक पंक्ति की वस्तु को एक बड़ी सूची में संग्रहीत करना। यदि आपका परिणाम सेट बहुत बड़ा है, तो यह सूची बड़ी हो जाएगी, भले ही JDBC पंक्ति डेटा कैसे प्राप्त करे।

यदि आपको बड़े परिणाम सेट को संभालने की आवश्यकता है, तो RowMapper स्केलेबल नहीं है। आप RowCallbackHandler . का उपयोग करने पर विचार कर सकते हैं इसके बजाय, JdbcTemplate पर संबंधित विधियों के साथ। RowCallbackHandler परिणामों को संग्रहीत करने के तरीके को निर्धारित नहीं करता है, उन्हें संग्रहीत करने के लिए आप पर छोड़ दिया जाता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. संग्रहीत प्रक्रिया से एकाधिक पंक्तियों को कैसे वापस करें? (ओरेकल पीएल/एसक्यूएल)

  2. Oracle में डेटाटाइम प्रारूप तत्वों की सूची

  3. ओरेकल पीएल/एसक्यूएल आईपीवी 6 सीडीआर के लिए रेंज आईपी की गणना कैसे करें

  4. Oracle SQL में (+) क्या करता है?

  5. Oracle में समय के बिना दिनांक प्रकार