Last presentation!!!
Spring IDE's presentation occured at the same time, but as I already knew a bit about it... I skipped. But go and get release 2.0 (released next week if I'm not wrong) it is amazingly productivity-inducing!
And now on to Spring Batch.
This new product of the portfolio allows to deal with batching.
It was a project built by Accenture and is now a co-project of Accenture and Interface 21.
It starts from the statement that nothing exists covering that subject in Java, and that there's a common misconception about the fact that Batch is not possible nor efficient in java.
It seems really complete and well-thought and is already production-grade.
I really dig the Enterprise Message-driven processing, sadly it's not targetted for version 1.0.
Features:
- multiple formats for files
- Automatic retries
- Job control language (start, stop, suspend, cancel)
- status and statistics
- Entry points for launch (http, Unix script,incoming message, etc...)
- Ability to run concurrently with OLTP system
- Ability to use multiple transaction resources
- Support services (logging...etc)
It really deals very well with batch retries at multiple levels, with a fairly rich set of possibilities.
Coding is (obviously one would say) POJO based, and batch behaviour is non-invasive.
Business logic is completely separated from job execution policies.
The really interesting stuff not mentionned but implicit is that jobs can now be thoroughly unit tested (not integration tested, UNIT tested with mocks and everything!!).
JMX Management is soon to be released. (How about batches launched from JRuby?)
Roadmap:
Milestone 2 is soon to be released.
In the future:
Partitioned container,SEDA,Grid, ESB support, and more...
