当列索引未知时将XLS映射到对象(Apache POI)

时间:2014-10-01 08:19:26

标签: java excel map apache-poi

我试图做到以下几点,但我正在努力解决最好的方法,有人能指出我正确的方向吗?

我有一个带有一个简单POJO的Java程序(让我们说5个属性),代表一个Person,我希望将其从多个源系统转换为存储在我自己的数据库表中。

public class Person

String salutation;
String first_name;
String last_name;
String email;

这些来源可以使用POJO不需要的额外信息(即超过我定义的4个属性)导出他们的数据。所以XLS看起来像这样......

firstname     secondname     address1     address2     fax     phone     email 
John          Smith          My Street                 873637  2323829   john@smith.com

我的想法是使用POI(XSSFWorkbook)并在Header行(firstname等)中找到字符串 - 然后,使用指定映射的XML文件(firstname = first_name),将列索引存储在我找到POJO的位置Map中的属性(使用列heaer),然后循环遍历每一行,根据属性/标题名称/列索引和POJO属性的映射创建对象。

有人可以建议这是否在正确的道路上?

1 个答案:

答案 0 :(得分:-2)

Try this project, use meta(Meta.java) info to transform excel data to pojo. You can run TestConvert.java to see the operation.