Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Hỗ trợ Spring JDBC và tập dữ liệu lớn

Trình điều khiển Oracle JDBC có hỗ trợ thích hợp cho setFetchSize() phương thức trên java.sql.Statement , cho phép bạn kiểm soát số hàng mà trình điều khiển sẽ tìm nạp trong một lần.

Tuy nhiên, RowMapper như được sử dụng bởi Spring hoạt động bằng cách đọc từng hàng vào bộ nhớ, lấy RowMapper để dịch nó thành một đối tượng và lưu trữ đối tượng của mỗi hàng trong một danh sách lớn. Nếu tập hợp kết quả của bạn lớn, thì danh sách này sẽ lớn, bất kể JDBC tìm nạp dữ liệu hàng như thế nào.

Nếu bạn cần xử lý các tập kết quả lớn, thì RowMapper không thể mở rộng. Bạn có thể cân nhắc sử dụng RowCallbackHandler thay vào đó, cùng với các phương thức tương ứng trên JdbcTemplate. RowCallbackHandler không chỉ định cách kết quả được lưu trữ, do đó bạn tùy thuộc vào việc lưu trữ chúng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Trong Oracle, có thể CHÈN hoặc CẬP NHẬT một bản ghi thông qua một khung nhìn không?

  2. Tìm và xóa các ký tự không phải ASCII khỏi Oracle Varchar2

  3. Cơ sở dữ liệu lỗi của Oracle ở đâu?

  4. Chuyển đổi chuỗi được phân tách bằng dấu phẩy thành mảng trong PL / SQL

  5. Cách xuất kết quả truy vấn Oracle sang tệp JSON khi sử dụng SQLcl