如何讓Spring Batch在一段時間後重試失敗的步驟?如何讓Spring Batch在一段時間後重試失敗的步驟?
如果該步驟失敗超過x次,我想不再重試該步驟並使整個作業失敗。
我正在使用Java Config,並且寧願不要使用XML來配置重試。
如何讓Spring Batch在一段時間後重試失敗的步驟?如何讓Spring Batch在一段時間後重試失敗的步驟?
如果該步驟失敗超過x次,我想不再重試該步驟並使整個作業失敗。
我正在使用Java Config,並且寧願不要使用XML來配置重試。
如果您在版本2.2.0
之前使用Spring Batch
,則使用Retry
functionality included in the Spring Batch library。
正如上面引述的Spring Batch的文檔頁面的開頭重試注意:
重試功能被拉出春批爲2.2.0。現在是
重試功能從2.2.0版的Spring Batch中退出。它現在是新圖書館的一部分,Spring Retry。
否則直接使用Spring Retry直接(分拆的Spring Batch的項目),它是將一些不錯的聲明方式來註釋功能,你需要:
@Service
class MyService {
//...
@Retryable(maxAttempts=5, [email protected](delay=100, maxDelay=500))
public myFunctionalityService() {
// ...
}
// ...
}
這一切都在這裏
http://docs.spring.io/spring-batch/reference/html/retry.html
有一些實施的重試的政策,但我認爲你的情況,你需要實現接口RetryPolicy所以它會滿足您的需求。
http://docs.spring.io/ spring-batch/trunk/reference/html/retry.html –