Spring批处理编写器附加下一行的数据

时间:2017-05-24 19:45:43

标签: spring spring-batch filewriter

我正在从DB读取数据并使用Spring批处理将其写入纯文本文件。如果我得到5个匹配的记录,我希望创建一个包含5行数据的文件。我能够生成文件,一切都很好,除了每行之间用空行分隔的事实。 例如: 我希望将记录创建为 -

1005 name1 lastname1 2017

1006 name2 lastname2 2017

1007 name3 lastname3 2017

但是在实际文件中创建为 -

1005 name1 lastname1 2017

1006 name2 lastname2 2017

1007 name3 lastname3 2017

我不确定为什么中间的额外线路会出现。有人可以帮我解决一下吗?

我正在使用下面的编写器配置:

<bean id="flatFileItemWriter" abstract="true" class="org.springframework.batch.item.file.FlatFileItemWriter">
        <property name="resource" value="file:{fileLocation}"/>
        <property name="lineAggregator">
            <bean class="org.springframework.batch.item.file.transform.PassThroughLineAggregator"/>
        </property>
  </bean>

1 个答案:

答案 0 :(得分:0)

尝试将<property name="lineSeparator" value="&#13;" />添加到Writer。

同时检查以确保您的线路没有任何线路分隔符字符。