我有一个 Spring 批处理作业,每天运行一次。我已经实现了读取器、处理器和写入器。假设如果运行读取器任务时发生任何异常,则整个作业将失败。我想在 5 分钟后或立即重新运行同一天的失败作业。请让我知道如何在 Spring Batch 中实现,或者为我提供任何示例代码或包含信息的网站。
最佳答案
看看Spring Retry 。它最初是 Spring Batch 的一部分,但从版本 2.2.0 开始,它已分拆为独立项目(和依赖项)。
能够以声明方式使用它特别好:
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;
}
关于java - Spring批量读取失败重试机制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32680759/