The Java ecosystem provides a variety of libraries and standards to help you define and launch batch processes: Java EE batch processing, Quartz Job Scheduler, Cron Utils, Easy Batch …
If you are only using Spring, there are many ways to easily schedule and run batch jobs.
For simple, scheduled activity tightly coupled to the app itself Spring Scheduler, provides the simplest solution to set up a method for performing periodic work.
If a job requires more control, or is going to benefit from having its own atomic deployable unit, we look to Spring Batch and Spring Cloud Task (SCT) to work at a higher level of abstraction. Both work great with Spring Cloud Data Flow (SCDF). As we gradually move towards a higher level of abstraction, we’re going to introduce multiple batch jobs that require oversight and orchestration.
Refer to Spring Cloud Task’s Getting Started guide for details on how to manage multiple jobs as part of an application; and to become familiar with Task and SCDF so that you can join the discussion within your project.
Read the Spring Scheduler guide.
Read the Spring Cloud Task Getting Started guide.