当前位置: 首页 > news >正文

喷泉网站哪里做专业的企业网站优化公司

喷泉网站哪里做,专业的企业网站优化公司,自己做网站需要学些什么,建设网站虚拟现实技术Spring-Retry框架是Spring自带的功能#xff0c;具备间隔重试、包含异常、排除异常、控制重试频率等特点#xff0c;是项目开发中很实用的一种框架。 1、引入依赖 坑点#xff1a;需要引入AOP#xff0c;否则会抛异常。 xml !-- Spring-Retry -- dependency具备间隔重试、包含异常、排除异常、控制重试频率等特点是项目开发中很实用的一种框架。 1、引入依赖 坑点需要引入AOP否则会抛异常。 xml !-- Spring-Retry -- dependency groupIdorg.springframework.retry/groupId artifactIdspring-retry/artifactId /dependency !-- Spring-AOP -- dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-starter-aop/artifactId /dependency 2、启动类注解 坑点很容易一时疏忽忘记启动类开启EnableRetry大家别忘了哦。 java import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.retry.annotation.EnableRetry; SpringBootApplication EnableRetry public class SpringRetryDemoApplication { public static void main(String[] args) { SpringApplication.run(SpringRetryDemoApplication.class, args); } } 3、模拟发短信 我们模拟一个发短信功能根据随机数分别作为成功、失败、抛出各种异常的入口。 这里抛出几种异常的目的是为了后面演示出重试注解参数产生的效果。 java import cn.hutool.core.util.RandomUtil; import lombok.extern.slf4j.Slf4j; /** * p * 短信服务工具类 * /p * */ Slf4j public class SmsUtil { /** * 发送短信 */ public static boolean sendSms() { // 使用随机数模拟重试场景 int num RandomUtil.randomInt(4); log.info([SmsUtil][sendSms] random num {}, num); return switch (num) { case 0 - // 模拟发生参数异常 throw new IllegalArgumentException(参数有误); case 1 - // 模拟发生数组越界异常 throw new ArrayIndexOutOfBoundsException(数组越界); case 2 - // 模拟成功 true; case 3 - // 模拟发生空指针界异常 throw new NullPointerException(); default - // 未成功则返回false false; }; } } 4、Retry应用 我们单独写一个用于重试调用的组件类用于业务类调用。 java import com.example.springretrydemo.util.SmsUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.retry.annotation.Backoff; import org.springframework.retry.annotation.Recover; import org.springframework.retry.annotation.Retryable; import org.springframework.stereotype.Component; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; /** * p * 重试组件 * /p * */ Slf4j Component public class RetryComponent { /** * 重试机制发送短信 */ Retryable( retryFor {IllegalArgumentException.class, ArrayIndexOutOfBoundsException.class}, noRetryFor {NullPointerException.class}, maxAttempts 4, backoff Backoff(delay 2000L, multiplier 2) ) public boolean sendSmsRetry() { log.info([RetryComponent][sendSmsRetry] 当前时间{}, getNowTime()); return SmsUtil.sendSms(); } /** * 兜底方法规则 * 1、超出了最大重试次数 * 2、抛出了不进行重试的异常 */ Recover public boolean recover() { log.info([RetryComponent][recover] 短信发送次数过多请稍后重试); return false; } /** * 获取当前时间 */ private String getNowTime() { return LocalDateTime.now().format(DateTimeFormatter.ofPattern(yyyy-MM-dd HH:mm:ss)); } } Retryable注解参数说明 Recover注解说明用于兜底当 超出了最大重试次数 或 抛出了不进行重试的异常 时直接执行该注解声明的兜底方法。 总结 Spring-retry框架还是挺实用的但不是万能的。 所以使用这个框架一定要明确好场景再使用我这里不推荐复杂场景下使用因为君子不立于危墙之下。 最后说一句(求关注!别白嫖) 如果这篇文章对您有所帮助或者有所启发的话求一键三连点赞、转发、在看。 关注公众号woniuxgg在公众号中回复笔记  就可以获得蜗牛为你精心准备的java实战语雀笔记回复面试、开发手册、有超赞的粉丝福利
http://www.hkea.cn/news/14494261/

相关文章:

  • 企业网站推广的实验内容wordpress get title
  • 英文网站数据库如何建设网站建设 书籍下载
  • 网站开发哪种语言好济南高端网站制作公司
  • 滴道网站建设网站图片等比缩小
  • 中信建设证券官方网站企业网站管理的含义及内容
  • 专业做网站建设公司哪家好免费一键搭建网站
  • 怎么做网站的软文推广成都哪里可以做网站
  • 新手学网站建设视频教程共30课高清版网络运维证
  • 京东商城商务网站建设目的谷歌优化网站链接怎么做
  • 建设银行的网站为什么这么卡大兴快速网站建设哪家好
  • 如何做网站可以吗公司网站建设的要点
  • 北京网站优化效果怎样促销活动推广方法有哪些
  • 青岛即墨网站网页设计英文wordpress变中文
  • wordpress房产中介模板网络优化工程师有前途吗
  • 石景山建网站wordpress忘记管理员密码
  • ps免费模板素材网站网站建设与管理就业前景
  • 企业网站空间选择现在有什么技能培训班
  • 地产网站互动设计最好免费高清影视
  • 上海有几个区和县阳江网站seo公司
  • 英文建站多少钱网站的公告栏怎么做
  • 用网站做淘宝客的人多吗做违法网站程序员犯法吗
  • 商城网站建设机构网站开发费用投入情况
  • 保定网站建设乐陵森木全屋定制
  • 如何在网站页面做标注旅游预定型网站建设
  • 做蔬菜配送有什么网站可下载了解网站轮播图怎么做
  • 廊坊营销网站团队网站建设海之睿
  • 冀icp 网站建设电商网站建设目的
  • 网站seo优缺点公司网站建设与设计制作
  • 做网站专题页的字大小是多少辽宁企业网站建设公司
  • 陕西省建设执业资格注册中心网站wordpress 关闭顶部