Since its release, Spring Framework has transformed virtually every
aspect of Java development including web applications, security,
aspect-oriented programming, persistence, and messaging. Spring Batch,
one of its newer additions, now brings the same familiar Spring idioms
to batch processing. Spring Batch addresses the needs of any batch
process, from the complex calculations performed in the biggest
financial institutions to simple data migrations that occur with many
software development projects.
Pro Spring Batch is intended to answer three questions:
- What? What is batch processing? What does it entail? What makes it
different from the other applications we are developing? What are the
challenges inherent in the development of a batch process?
- Why? Why do batch processing? Why can't we just process things as
we get them? Why do we do batch processing differently than the web
applications that we currently work on?
- How? How to implement a robust, scalable, distributed batch
processing system using open-source frameworks
Pro Spring Batch gives concrete examples of how each piece of
functionality is used and why it would be used in a real-world
application. This includes providing tips that the "school of hard
knocks" has taught author Michael Minella during his experience with
Spring Batch. Pro Spring Batch includes examples of I/O options that
are not mentioned in the official user's guide, as well as performance
tips on things like how to limit the impact of maintaining the state of
your jobs.
The author also walks you through, from end to end, the design and
implementation of a batch process based upon a theoretical real-world
example. This includes basic project setup, implementation, testing,
tuning and scaling for large volumes.