1.添加retry、aop依赖
<dependency>
<groupId>org.springframework.retry</groupId>
<artifactId>spring-retry</artifactId>
</dependency>
<!--<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
</dependency>-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
2.开启retry
程序启动类添加@EnableRetry
3.测试
@Retryable(backoff = @Backoff(delay = 2000L, multiplier = 2))
public void retryTest(){
System.out.println("retry execute..." + LocalDateTime.now());
throw new RuntimeException();
}
@Retryable注解属性说明
1)value:抛出指定异常重试
2)include:指定多个异常类型
3)exclude:排除不需要处理的异常类型
3)maxAttempts:最大重试次数,默认3次
4)backoff:重试等待策略,默认使用@backoff,其中delay为延迟多少秒,multiplier为延迟时间的倍数