Java Reference
In-Depth Information
Listing 9-59. ItemReader and ItemWriter for Step 1
<beans:bean id="customerFile"
class="org.springframework.core.io.FileSystemResource" scope="step">
<beans:constructor-arg value="#{jobParameters[customerFile]}"/>
</beans:bean>
<beans:bean id="customerFileReader"
class="org.springframework.batch.item.file.FlatFileItemReader">
<beans:property name="resource" ref="customerFile"/>
<beans:property name="lineMapper">
<beans:bean
class="org.springframework.batch.item.file.mapping.DefaultLineMapper">
<beans:property name="lineTokenizer">
<beans:bean class="org.springframework.batch.item.file.transform.
DelimitedLineTokenizer">
<beans:property name="names"
value="firstName,middleInitial,lastName,address,city,state,zip,
email"/>
<beans:property name="delimiter" value=","/>
</beans:bean>
</beans:property>
<beans:property name="fieldSetMapper">
<beans:bean class="org.springframework.batch.item.file.mapping.
BeanWrapperFieldSetMapper">
<beans:property name="prototypeBeanName" value="customer"/>
</beans:bean>
</beans:property>
</beans:bean>
</beans:property>
</beans:bean>
<beans:bean id="customer" class="com.apress.springbatch.chapter9.Customer"
scope="prototype"/>
<beans:bean id="jdbcBatchWriter"
class="org.springframework.batch.item.database.JdbcBatchItemWriter">
<beans:property name="dataSource" ref="dataSource"/>
<beans:property name="sql" value="insert into customer (firstName, middleInitial, lastName,
address, city, state, zip, email) values (?, ?, ?, ?, ?, ?, ?, ?)"/>
<beans:property name="itemPreparedStatementSetter"
ref="preparedStatementSetter"/>
</beans:bean>
<beans:bean id="preparedStatementSetter"
class="com.apress.springbatch.chapter9.
CustomerItemPreparedStatementSetter"/>
None of the configuration in Listing 9-59 should be new, because you've seen it previously. The new
parts come when you configure step 2. For step 2, you're using a JdbcCursorItemReader with the
Search WWH ::




Custom Search