java重试
2022/7/16 1:20:36
本文主要是介绍java重试,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
重试
重试,就是多试几次。一次不成功,多试几次说不定就成功了。
什么时候重试?
要执行的逻辑比较重要,或者是服务不稳定,或者是Rpc远程调服务有时不成功,都可以使用重试。
示例代码
public class RetryTest { private static final Logger log = Logger.getLogger(RetryTest.class); public static void main(String[] args) throws InterruptedException { retryDoSomething(); } public static void retryDoSomething() throws InterruptedException { log.info("retryDoSomething start."); //重试次数 int maxTimes = 5; //每次重试间隔时间 int interval = 500; for (int i = 0; i <= maxTimes; i++) { boolean isOk = doSomething(); //成功了就停止 if (isOk ) { break; } Thread.sleep(interval); } log.info("retryDoSomething end."); } /** * 执行逻辑,成功就返回 true,报错返回 false * * @return */ public static boolean doSomething() { try { //执行逻辑 doSth(); } catch (Exception e) { log.error("service.doSomething() error.", e); return false; } return true; } /** * 执行逻辑的方法 * * 以下是示例,可以将示例替换成自己的逻辑 * */ public static void doSth() { Random random = new Random(); //随机产生一个[0-100]之间的随机数,由于是随机,每次执行的结果可能不一样 int num = random.nextInt(101); if (num % 5 ==0) { //如果是5的倍数就不报错 log.info("doSth num:"+ num); } else { //模拟失败,抛异常 throw new NumberFormatException(); } } }
这篇关于java重试的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-21订单系统资料入门教程:轻松管理你的订单
- 2024-09-21Java部署资料:新手入门教程
- 2024-09-21Java部署资料:新手入门教程
- 2024-09-21Java订单系统资料:新手入门教程与实战指南
- 2024-09-21Java管理系统资料入门教程
- 2024-09-21从零开始学习Java监控系统资料
- 2024-09-21Java就业项目资料:新手入门的必备教程
- 2024-09-21Java全端资料:初学者指南
- 2024-09-21Java全栈资料入门教程及资源汇总
- 2024-09-21Java日志系统资料入门教程