春季批 – 如何生成一个批处理作业的输出文件为Excel表

我有一个简单的弹簧批处理程序,它从INPUT文件读取数据并写入OUTPUT文件。

input文件有50000条logging,我的块大小是1000。

在input文件中有五列, 一二三四五

我的要求是创build一个Excel文件(.xls文件)作为输出。

没有创buildExcel文件(.xls)的支持。 有两个选项。

  1. 创build输出为CSV文件(FlatFileItemWriter),然后可以在Excel中打开。 这是最简单的select,对于大多数应用程序来说就足够了。
  2. 其他选项是实现一个自定义的FileItemWriter,使用像apache POI或jexl这样的库创buildexcel文件

如果一个CSV文件不够用,你将需要实现你自己的ItemWriter,它可以使用其中一个可用的Excel库(比如JExcelApi或者 Apache POI )将一个“item”写入一个Excel文件。

我将从扩展ItemWriter开始。 确保你最后closures了XLS文件。

有关创build新XLS文档的示例,请参阅POI快速指南 。

有一个春季批量扩展项目,提供了Excel Reader和Writer开箱即用 – https://github.com/mdeinum/spring-batch-extensions/tree/master/spring-batch-excel

底层支持POI和JExcel – 虽然新版本的Excel与POI一起工作