Spring Batch is a complete framework for creating a robust batch application (https://projects.spring.io/spring-batch/). We can create reusable functions to process large volumes of data or tasks, commonly known as bulk processing.
Spring Batch provides many useful features, such as the following:
- Logging and tracing
- Transaction management
- Job statistics
- Managing the process; for example, through restarting jobs, skipping steps, and resource management
- Administration Web Console
This framework is designed to manage a high volume of data and achieve high-performance batch processes by using partition features. We will start with a simple project, to explain each principal component of Spring Batch.
As mentioned in the Spring Batch documentation (https://docs.spring.io/spring-batch/trunk/reference/html/spring-batch-intro.html), the most common scenarios for using the framework are as follows:
- Committing batch processes periodically
- Concurrent batch processing for parallel processing a job...