繁体   English   中英

如何从数据库中读取大量数据并在Java中写入文件?

[英]How to read huge data from database and write on file in java?

我有一个至少有2 GB数据的derby数据库,我必须读取此数据并将其写入文本文件。 现在,某些列可能是blob数据类型。

我目前的方法是一次从一个表中读取数据,批处理大小为10(比方说),然后将数据(字符串列表)放入一个数组,该数组阻止最大大小为10的队列。从队列中,线程将选择元素一个接一个地写在文件上。

我面临以下问题,

  1. how to fetch 10 rows from a table in a single hit and fetch next 10 rows in second
  hit and so on.
  2. how to convert blob and binary data into string 

您无法明确地执行此操作。 但是您可以设置fetchSize。 此参数向JDBC驱动程序提示要从数据库中一次提取许多行。 但是驾驶员可以自由地忽略它并按照自己的意愿去做。 一些驱动程序以块的形式获取行,而某些驱动程序则一次性读取了整个结果集。

使用访存大小(取决于驱动程序)将缓冲数据,因此在性能方面没有问题,因为它隐式地为您分块。 因此,从结果集中获取数据的方式基本上没有区别。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM