Solución:
Sí tu puedes. Spring Batch distingue trabajos basados en JobParameters. Por lo tanto, si siempre pasa diferentes JobParameters al mismo trabajo, tendrá varias instancias del mismo trabajo en ejecución. Una forma sencilla es simplemente agregar un parámetro UUID a cada solicitud para iniciar un trabajo. Ejemplo:
final JobParametersBuilder jobParametersBuilder = new JobParametersBuilder();
jobParametersBuilder.addString("instance_id", UUID.randomUUID().toString(), true);
jobLauncher.run(job,jobParametersBuilder.toJobParameters());
El booleano ‘verdadero’ al final le indica a Spring Batch que use ese parámetro como parte de la ‘identidad’ de la instancia del trabajo, por lo que siempre obtendrá nuevas instancias con cada ‘ejecución’ del trabajo.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)