加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 根据需要将数据从文件加载到集合的最有效方法是什么?

发布时间:2020-12-15 08:32:38 所属栏目:Java 来源:网络整理
导读:我正在开发一个 java项目,它允许用户解析可能有数千行的多个文件.解析的信息将存储在不同的对象中,然后将其添加到集合中. 由于GUI不需要一次加载所有这些对象并将它们保存在内存中,我正在寻找一种从文件加载/卸载数据的有效方法,以便数据仅在用户请求时加载
我正在开发一个 java项目,它允许用户解析可能有数千行的多个文件.解析的信息将存储在不同的对象中,然后将其添加到集合中.

由于GUI不需要一次加载所有这些对象并将它们保存在内存中,我正在寻找一种从文件加载/卸载数据的有效方法,以便数据仅在用户请求时加载到集合中.

我现在只是评估选项.我还想到了这样一种情况:在将一部分数据加载到集合中并在GUI上呈现之后,重新加载先前观察到的数据的最佳方式.重新运行解析器/填充集合/填充GUI?或者可能找到一种方法将集合保存到内存中,或者序列化/反序列化集合本身?

我知道,如果执行某种数据过滤,加载/卸载数据子集会变得棘手.假设我对ID进行过滤,因此我的新子集将包含来自两个先前分析的子集的数据.这是没有问题的,我将整个数据的主副本保存在内存中.

我已经读过google-collections在处理大量数据时非常有效,并且提供了简化许多方法的方法,因此这可以提供一种替代方法,允许我将集合保存在内存中.这只是一般性的讨论.关于使用什么集合的问题是一个单独而复杂的问题.

你知道这类任务的一般建议是什么吗?我想听听你对类似场景的所作所为.

如果需要,我可以提供更多细节.

解决方法

您可以将数据库嵌入到应用程序中,例如 HSQLDB.这样您第一次解析文件然后使用SQL来执行简单和复杂的查询.

HSQLDB (HyperSQL DataBase) is the
leading SQL relational database engine
written in Java. It has a JDBC driver
and supports nearly full ANSI-92 SQL
(BNF tree format) plus many SQL:2008
enhancements. It offers a small,fast database engine which offers in-memory and disk-based tables and supports embedded and server modes. Additionally,it includes tools such as a command line SQL tool and GUI query tools.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读