问题
I have one spring batch job which will run daily once. I had implemented reader, processor and writer. Suppose if any exception happens while running reader task, then entire job will fail. I want to rerun same day for that failure jobs after 5 mins or immediately. Kindly let me know how i can implement in spring batch or provide me any sample code or website which have information.
回答1:
Take a look at Spring Retry. It started as part of Spring Batch but as of version 2.2.0 it has spined-off to a standalone project (and dependency).
Being able to use it declaratively is particularly nice:
import org.springframework.retry.annotation.Backoff;
import org.springframework.retry.annotation.Retryable;
public interface MyExampleService {
@Retryable(maxAttempts = 3, backoff = @Backoff(delay = 2000))
String callService() throws Exception;
}
来源:https://stackoverflow.com/questions/32680759/spring-batch-retry-mechanism-for-reader-failure