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

我想做个卷帘门网站怎么做如何建设属于自己的网站

我想做个卷帘门网站怎么做,如何建设属于自己的网站,企业推广方案,网站建设框架程序在我们的日常开发中#xff0c;经查会遇到调用接口失败的情况#xff0c;这时候就需要通过一些方法来进行重试#xff0c;比如通过while循环手动重复调用或#xff0c;或者通过记录错误接口url和参数到数据库#xff0c;然后手动调用接口#xff0c;或者通过JDK/CGLib动态…在我们的日常开发中经查会遇到调用接口失败的情况这时候就需要通过一些方法来进行重试比如通过while循环手动重复调用或或者通过记录错误接口url和参数到数据库然后手动调用接口或者通过JDK/CGLib动态代理的方式来进行重试但是这种方法比较笨重且对原有逻辑代码的入侵性比较大。 SpringRetry却可以通过注解在不入侵原有业务逻辑代码的方式下优雅的实现重处理功能。 1添加pom依赖 dependencygroupIdorg.springframework.retry/groupIdartifactIdspring-retry/artifactId/dependency2主启动类开启EnableRetry注解 /*** 主启动类* EnableCaching允许使用注解进行缓存* 添加注解EnableRetry* * author hua*/ EnableRetry EnableCaching SpringBootApplication MapperScan(basePackages com.it.mapper) public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);} }3在重试所调用方法上添加Retryable注解 Service Slf4j public class SpringRetryService {/*** 重试所调用方法** delay2000L表示延迟2秒 multiplier2表示两倍 即第一次重试2秒后,第二次重试4秒后,第三次重试8秒后* return*/Retryable(value {RemoteAccessException.class}, maxAttempts 3, backoff Backoff(delay 2000L, multiplier 2))public boolean call(Integer param) {return retryMethod(param);}/*** 超过最大重试次数或抛出没有指定重试的异常* param e* param param* return*/Recoverpublic boolean recover(Exception e, Integer param) {log.info(请求参数为: , param);log.info(超过最大重试次数或抛出没有指定重试的异常, e {} , e.getMessage());return false;}public static boolean retryMethod(Integer param) {int i new Random().nextInt(param);log.info(随机生成的数:{}, i);if (1 i) {log.info(为1,返回true.);return true;} else if (i 1) {log.info(小于1,抛出参数异常.);throw new IllegalArgumentException(参数异常);} else if (i 1 i 10) {log.info(大于1,小于10,抛出参数异常.);return false;} else {//为其他log.info(大于10,抛出自定义异常.);throw new RemoteAccessException(大于10,抛出自定义异常);}} }Spring Retry 注解属性详解 1、EnableRetry 作用于SpringbootApplication启动类开启spring retry。 proxyTargetClass默认值为false设置为true时为CGLIB代理。 2、Retryable 作用于需要进行重试的方法 value指定处理的异常类默认为空 include指定处理的异常类默认为空当include和exclude为空时默认所有异常 exclude指定哪些异常不处理默认空 maxAttempts最大重试次数。默认3次 backoff 重试补偿策略。默认使用Backoff注解 3、Backoff 作用于backoff中的补偿策略 delay指定等待时间没有设置的话默认为1000ms maxDelay最大重试时间没有设置默认为3000ms multiplier下一次调用时间的乘数 random随机等待时间默认值为false 4、Recover 用于对retry方法的异常抛出的特殊处理可做熔断、降级、日志等操作。入参必须和retry对应方法所抛出的异常类型相同。 4单元测试 SpringBootTest Slf4j public class SpringRetryServiceTest {Autowiredprivate SpringRetryService springRetryService;Testvoid contextLoads() {boolean result springRetryService.call(100);log.info(方法返回结果为: {}, result);} }5测试结果 6:源码下载 下载地址 springboot-cacheable 欢迎star哦~ 参考资料 Retryable注解优雅的实现循环重试功能 SpringRetryspring的重试机制——只需一个注解 Spring 中的重试机制简单、实用
http://www.dnsts.com.cn/news/182499.html

相关文章:

  • 在微信上做彩票网站吗wordpress 经典博客主题
  • 怎样给网站做优化做护肤品好的网站好
  • 成都比较好的网站设计公司东莞推广优化关键词优化
  • 设计网站公司有哪些永久免费erp
  • 官方网站建设 都来磐石网络网站增加关键词
  • 大连网站哪家做的好?wordpress用户角色插件
  • 网站vip功能怎么实现logo在线设计生成器标智客
  • 网站开发安卓手机怎么搭建网页
  • 网站管理员登陆后缀牛商网做的包装盒网站
  • dede网站建设的个人总结电子商务网站开发人员
  • 做纺织外贸网站绍兴网站推广排名
  • 响应式潍坊网站建设网站备案主体域名
  • 网站上的通话功能怎么做中国建设会计网站
  • 个人网站设计方案扬州网络营销外包
  • 广州响应式网站建设网络规划师考哪些内容
  • 中文wordpress站点微信的网站建设
  • 网站开发建设协议关于做网站的外语文献书名
  • html的制作网站的优点天猫网站左侧菜单向右滑出的导航菜单
  • 重庆夹夹虫网络公司网站建设WordPress部署商城
  • 百度搜索官方网站WordPress通讯目录
  • 怎么做网站账号注册机做蔬菜线上的网站
  • cms网站开发涉及的知识网站建设项目实施计划书
  • 网站管理工具做网站推广产品
  • 旅游投资公司网站建设wordpress带会员中心
  • 浙江学院网站建设中国执行信息公开网官网
  • 网站内容策划书西安广告设计与制作公司
  • 厦门市建设保障性住房局网站计算机应用技术主要学什么
  • 怎么用we做网站企业网站建站元素
  • 军用棉被门网站建设建网站首选公司
  • php网站开发干嘛的搜索引擎推广一般包括( )