【问题标题】:Reading Data From Excel vs DB in Java在 Java 中从 Excel 与 DB 中读取数据
【发布时间】:2020-03-11 12:19:13
【问题描述】:

我有一个 excel 文件,其中包含一张或两张表格,每张表格中有 30K+ 行。 我需要将每一行解析为一个 DTO,然后为每个行生成一个唯一编号,然后将所有内容存储在 DB 中。

我可以通过两种方式将数据转换为 DTO:

  1. 或者,使用 Apache.poi 直接从 excel 中读取数据,
  2. 或者,将数据导入 DB(使用 DB Tools)并从 DB 中读取(通过创建适当的实体,然后将其转换为 DTO)。

我的问题是:哪个选项更可取/最佳/更快/更好?

我担心从 excel 读取会比较慢,但每行可能有大约 100 个单元格,因此考虑到该功能可能很少执行,使用这些字段创建适当的表和实体类也可能需要时间。

【问题讨论】:

    标签: java excel database apache-poi


    【解决方案1】:

    IMO 最好的方法是使用 apache-poi。 您可以使用此链接 [1],了解如何操作。

    因为如果您要将所有内容存储到数据库中将花费大量时间,然后您必须再次通过读取数据表来生成 DTO。

    [1]How to convert my xlsx sheet to java object using Apache POI

    【讨论】:

    • 我知道怎么做,我只是怀疑从 excel 30000+ 行读取会比从 DB 读取相同数量的行慢。
    • 总之你必须阅读那个excel文件来填充数据表吗?
    • 不,我只能进行导入,例如,使用 Toad 或 MS SQL Server 或其他任何方式...
    • 但这与直接生成 DTO 相比会很慢
    • 实现会花费一些时间,但执行速度可能会快得多。
    猜你喜欢
    • 1970-01-01
    • 2013-10-24
    • 2011-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多