title: Dynamically processing multiple batch files and generating corresponding output files with Spring Batch
body: <p>I've recently started learning Spring Batch in order to make use of some of its more advanced features like asynchronous batch processing, job stopping, and scheduling to replace some existing batch processing functionality, and implement new batch processing functionality.  Right now, I'm trying to figure out how to dynamically process multiple batch files and generate a "receipt" file for each input file, and I'm confused by some of the design decisions of the Spring Batch architects.  It seems like in order to process a simple flat CSV file and generate the output, I'm going to have to manually hack the beans in my ApplicationContext and manually set their "resource" properties at runtime in order to achieve what I want with the FlatFileItemReader and FlatFileItemWriter.  This is neither safe nor good practice for something that is allegedly a multi-threaded, high-performance batch processing framework.  Am I just missing something ?</p>