Spring batch spring批处理从BeanRapperFieldSetMapper获取SQLParameterSource
我正在使用BeanWrapperFieldSetMapper将CSV文件的内容映射到自定义bean。是否有一个spring批处理实用程序类将此bean转换为实现SQLParameterSource接口的对象。我正在寻找一个类,它将使用反射来填充MapSqlParameterSource类,使用自定义bean字段名和关联值以及键/值对 这是我当前的作业配置Spring batch spring批处理从BeanRapperFieldSetMapper获取SQLParameterSource,spring-batch,Spring Batch,我正在使用BeanWrapperFieldSetMapper将CSV文件的内容映射到自定义bean。是否有一个spring批处理实用程序类将此bean转换为实现SQLParameterSource接口的对象。我正在寻找一个类,它将使用反射来填充MapSqlParameterSource类,使用自定义bean字段名和关联值以及键/值对 这是我当前的作业配置 <bean id="abcFileReaderDBLoaderJob" parent="simpleJob"> <p
<bean id="abcFileReaderDBLoaderJob" parent="simpleJob">
<property name="steps">
<list>
<bean parent="simpleStep">
<property name="itemReader">
<bean class="org.springframework.batch.item.file.FlatFileItemReader">
<property name="lineMapper">
<bean class = "org.springframework.batch.item.file.mapping.DefaultLineMapper">
<property name="lineTokenizer">
<bean class="org.springframework.batch.item.file.transform.DelimitedLineTokenizer">
<property name="strict" value="false"/>
<property name="names" value="a,b,c" />
</bean>
</property>
<property name="fieldSetMapper">
<bean class="org.springframework.batch.item.file.mapping.BeanWrapperFieldSetMapper">
<property name="prototypeBeanName" value="abcBean"/>
</bean>
</property>
</bean>
</property>
<property name="resource">
<bean class="org.springframework.core.io.FileSystemResource">
<constructor-arg value="${abc.file}" />
</bean>
</property>
</bean>
</property>
<property name="itemWriter" ref="abcTableWriter"/>
</bean>
</list>
</property>
</bean>
我的通用表编写器有这个接口
/**
* Takes a list of SqlParameterSource and writes to the DB.
*/
public class TableWriter implements ItemWriter<SqlParameterSource> {
....
}
/**
*获取SqlParameterSource的列表并写入数据库。
*/
公共类TableWriter实现ItemWriter{
....
}
你的意思是什么
从中获取参数值的SqlParameterSource实现
给定JavaBean对象的bean属性。豆子的名字
属性必须与参数名称匹配
使用SpringBeanRapper访问下面的bean属性
我想是的,但似乎我必须在我的读者和作者之间添加一个“处理器”步骤。我希望我可以配置我的阅读器以返回所需的类型并避免额外的步骤。
ItemProcessor
是数据转换的正确方法;你的代码会更清晰