根据Spring Batch中的标题读取excel文件列

时间:2015-12-03 09:29:45

标签: java spring apache-poi spring-batch

我们要求在java中读取巨大的excel文件。我更喜欢Spring Batch,因为我们已经在项目中使用了Spring。但是,我们有一个瓶颈,这个excel文件可以有不同的列,用户可以更改列的顺序。因此,我们必须确定哪个列具有第一行/标题中的哪些数据。

示例: -

User 1 :
                    Name    EmployeeId
                    Raj      1
                   Peter     2

User 2 :-
                    EmployeeId Name
                   5                   Steven
                   6                   Antony

但是在Spring Batch中,我们需要在配置作业时告诉列顺序。 一种方法是我将打开文件并读取第一行并配置Spring批处理,但效率不高。 应该有一些内置的方式,但是我无法找到它。

1 个答案:

答案 0 :(得分:2)

Spring Batch Excel扩展程序:https://github.com/mdeinum/spring-batch-extensions/tree/master/spring-batch-excel有一个符合您需求的RowNumberColumnNameExtractor

即。它将第0行作为列行读取,然后可以与BeanWrapperRowMapper一起使用以映射到java对象