【发布时间】:2014-08-24 14:23:56
【问题描述】:
我有一个非常常见的封装问题。我正在通过 jdbc 查询一个表,需要将记录保存在内存中一段时间以进行处理。我没有任何休眠 POJO 用于同一个表来创建任何对象并保存。我说的是单个负载 2 亿询问。
常见的方法是创建一个对象数组并在需要使用它们时进行转换。 (假设,我可以获得将保存在一些参考表中的列名和数据类型等表详细信息..)但是这种方法将非常昂贵(时间)我想当考虑到负载时..
任何好的方法将不胜感激......
【问题讨论】:
-
我关心的是处理时间,假设我在系统中有足够的内存......
-
您将需要 大量 内存才能在内存中保存 2 亿行。
-
暂时忘记内存..我可以触发多个查询并创建线程...问题是如何在不创建对象数组的情况下将记录保存在内存中。如果我能避免的话会很好类型转换项目的时间,因为每条记录中会有很多列
-
你可能猜错了类型转换非常昂贵,请参阅stackoverflow.com/a/8803559/3080094
标签: java arrays jdbc resultset encapsulation