spring retry demo
main启动需要添加注解
@EnableRetry
service接口
public interface RetryService {
    void testRetry();
}
service实现
import org.springframework.retry.annotation.Backoff;
import org.springframework.retry.annotation.Recover;
import org.springframework.retry.annotation.Retryable;
import org.springframework.stereotype.Service;
@Service
public class RetryServiceImpl implements RetryService {
    @Override
    @Retryable(value = Exception.class, maxAttempts = 5, backoff = @Backoff(delay = 3000, multiplier = 2, maxDelay = 20000))
    public void testRetry() {
        System.out.println("in test retry: " + System.currentTimeMillis() / 1000);
        int a = 1 / 0;
        System.out.println("end in test retry");
    }
    @Recover
    public void recover(Exception e) {
        System.out.println("回调方法执行!!!");
    }
}
  
controller
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class RetryController {
    @Autowired
    private RetryService retryService;
    @GetMapping("/test_retry")
    @ResponseBody
    public String testRetry() {
        try {
            retryService.testRetry();
            return "ok";
        } catch (Exception e) {
            e.printStackTrace();
        }
        return "error";
    }
}
main
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.retry.annotation.EnableRetry; @SpringBootApplication @EnableRetry public class Main { public static void main(String[] args) { SpringApplication.run(Main.class, args); } }
参考:https://blog.csdn.net/huanongying123/article/details/104417712
    Please call me JiangYouDang!
 
                    
                     
                    
                 
                    
                 
                
            
         
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号