【问题标题】:Map imported Excel columns to Java object attributes将导入的 Excel 列映射到 Java 对象属性
【发布时间】:2021-06-18 22:41:36
【问题描述】:

我有一个解析 Excel 文件的小型 Java 应用程序(使用 Apache POI 库)。 现在我想将列值映射到 Java 对象,我正在寻找执行此任务的最佳解决方案或模式。

例如,Java 对象是 Customer,具有两个属性 - name 和 email:

public class Customer {
    private String name;
    private String email;
    ... constructor, getters, setters
}

Excel 文件可以有很多列,但它还包含两个命名的 nameemail,我想将它们映射到 Java 中的 Customer 对象的属性。

例如:

我遍历单元格并知道我的 Customer 对象的列索引是 0 和 2。我迭代每一行,如果单元格索引为 0,我将其值分配给名称,如果 2,我将其分配给电子邮件,但它是真的是硬编码,我认为必须有更简单的解决方案或某种模式。

我可以将 Customer 属性放入 Enum,然后将它们与 Excel 列名进行比较,并在某些数据结构中映射它们的顺序,以便如果我更新 Customer 对象,我可以轻松地添加另一个 Enum 值,而无需在解析逻辑中硬编码属性名称?

【问题讨论】:

    标签: java parsing design-patterns import import-from-excel


    【解决方案1】:

    我找到了完全符合我要求的小项目:

    ExcelToObjectMapping-Java

    在对上面的源代码进行小幅修改后,我设法导入了我的 excel 文件并将它们映射到我的 Java 实体。

    【讨论】:

      猜你喜欢
      • 2017-03-16
      • 1970-01-01
      • 2020-06-27
      • 2010-10-18
      • 2022-01-01
      • 1970-01-01
      • 2017-03-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多