我试图理解spring-retry,我看到了2种方法,其中第一种是简单的
@Retryable(value = {SomeException1.class,SomeException2.class}, maxAttempts = Constants.RETRY_VAL, backoff = @Backoff(value = Constants.RETRY_BACK))
public String getData(){...}
和第二种RetryTemplate(使用RetryCallback / RecoveryCallback执行)。
我的理解是第二个可以提供更细粒度的控制。我们什么时候会采用第二种方法?会在我们拥有自己的Backoff和retryPolicies实现时吗?
另外,我找不到使用
@Retryble
注释设置自定义策略的示例或示例。 最佳答案
我认为,第二种方法RetryTemplate
是首选。因为这种方法有助于我们在一个地方编写配置并在许多地方使用。
您也可以创建一个或多个RetryTemplate
bean。每个RetryTemplate
bean用于一个异常映射。