1、引入依赖的 JAR 包
<dependency>
<groupId>org.springframework.retry</groupId>
<artifactId>spring-retry</artifactId>
<version>1.2.4.RELEASE</version>
</dependency>
2、指定项目启用重试功能

在主类(Application.java)上添加 @EnableRetry 注解启用重试机制。
3、标记方法开启重试

- @Retryable 被注解的方法发生异常时会重试
参数 | 描述 |
---|
value | 指定发生什么异常进行重试 |
include | 和 value 一样,默认空,当 exclude 也为空时,所有异常都重试 |
exclude | 指定异常不重试,默认空,当 include 也为空时,所有异常都重试 |
maxAttemps | 重试次数,默认 3 |
backoff | 退避策略,默认没有 |
- @Backoff 指定退避策略(退避是指怎么去做下一次的重试,在这里其实就是等待多长时间)
参数 | 描述 |
---|
delay | 指定多久后重试,单位毫秒 |
multiplier | 指定延迟的倍数,比如 delay= 5000l、multiplier =2 时,第一次重试为 5 秒后,第二次为 10 秒,第三次为 20 秒 |