首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JDBC性能-将大型结果集从数据库传递给Java

问JDBC性能-将大型结果集从数据库传递给Java
EN

Stack Overflow用户
提问于 2014-07-17 23:43:25
回答 2查看 8.3K关注 0票数 1

我有一个与表演有关的问题。我需要从数据库中检索大约500行,以便使用Apache将结果导出到Microsoft电子表格中。

到目前为止,对于所有的数据库查询,我一直在数据库层中填充一个PL/SQL对象,然后将这个PL/SQL对象返回给Java,然后循环遍历结果。

但是,既然我需要从db层将这么大的结果集返回给Java,我就被问到一个问题:我认为通过XML将500行返回到Java中是否会更好。

这是一个未知数的问题,但我希望能得到人民的意见,请。

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-18 00:38:58

根据01/java.112/e16548/resltset.htm#JJDBC28621

默认情况下,当Oracle JDBC运行查询时,它每次从数据库游标中检索10行的结果集。这是默认的Oracle行获取大小值。通过更改行获取大小值,可以更改每次访问数据库游标时检索的行数。

以下方法可用于所有语句、PreparedStatement、CallableStatement和ResultSet对象,用于设置和获取获取大小:

代码语言:javascript
复制
void setFetchSize(int rows) throws SQLException
int getFetchSize() throws SQLException
票数 4
EN

Stack Overflow用户

发布于 2014-07-17 23:45:10

使用Java ResultSet。这将每次只获取一些行,因为您需要它们。下面是如何使用它的一个示例:基本上,每次您请求一个新行时(如在http://docs.oracle.com/javase/tutorial/jdbc/basics/retrieving.html ()中),JDBC系统都会决定客户端上的数据是否可用,或者需要从服务器获取数据。这样,您就不会一次获取所有数据。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24815292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档