我是Spring Batch
版本3.0.6.RELEASE
的新手。我开发了一个spring项目,它从mysql
数据库读取数据并写入CSV
文件。我的数据库表有很多列,为了读取我需要写所有列名。 获取所有列名称的方式是什么?
<bean id="flatFileItemWriter" class="org.springframework.batch.item.file.FlatFileItemWriter"
scope="step">
<property name="resource" value="file:csv/customers.txt" />
<property name="lineAggregator">
<!-- An Aggregator which converts an object into delimited list of strings -->
<bean
class="org.springframework.batch.item.file.transform.DelimitedLineAggregator">
<property name="delimiter" value="|" />
<property name="fieldExtractor">
<!-- Extractor which returns the value of beans property through reflection -->
<bean class="org.springframework.batch.item.file.transform.BeanWrapperFieldExtractor">
<property name="names"
value="customerNumber,customerName,contactLastName,contactFirstName,
phone,addressLine1,addressLine2,city,state,postalCode,country,salesRepEmployeeNumber,creditLimit" />
</bean>
</property>
</bean>
</property>
</bean>
我不想在那里写每个列名。我需要改变什么?
答案 0 :(得分:0)
传递一个合适的项目,它可能会按照您期望的输出方式工作,我希望使用FieldSet或Array类型的项目获得最佳结果
请参阅PassThroughFieldExtractor.extract
FieldSet或数组将按原样返回