out of the box you can:
for more than one reader i have an example in my github repository, but this is a "unify all read items from all readers to one item for each read sequence"
example spring configuration:
Code:
<bean id="compositeItemReader" class="de.langmi.spring.batch.examples.readers.support.CompositeItemStreamReader">
<property name="unifyingMapper">
<bean class="de.langmi.spring.batch.examples.readers.support.DefaultUnifyingStringItemsMapper" />
</property>
<property name="itemReaderStreams">
<list>
<ref bean="itemReader1" />
<ref bean="itemReader2" />
</list>
</property>
</bean>
<bean id="itemReader1" class="org.springframework.batch.item.file.FlatFileItemReader" scope="step">
<property name="name" value="itemReader1" />
<property name="resource" value="#{jobParameters['input.file.1']}" />
<property name="lineMapper">
<bean class="org.springframework.batch.item.file.mapping.PassThroughLineMapper" />
</property>
<property name="strict" value="true" />
</bean>
<bean id="itemReader2" class="org.springframework.batch.item.file.FlatFileItemReader" scope="step">
<property name="name" value="itemReader2" />
<property name="resource" value="#{jobParameters['input.file.2']}" />
<property name="lineMapper">
<bean class="org.springframework.batch.item.file.mapping.PassThroughLineMapper" />
</property>
<property name="strict" value="true" />
</bean>