如何在Spring Boot中将配置属性注入Spring Retry注释?

发布时间:2019-07-25 整理:脚本之家
脚本之家收集整理的这篇文章主要介绍了如何在Spring Boot中将配置属性注入Spring Retry注释?脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随脚本之家小编过来看看吧!

spring启动应用程序中,我在yaml文件中定义了一些配置属性,如下所示.

my.app.maxAttempts = 10
my.app.backOffDelay = 500L

还有一个例子bean

@ConfigurationProperties(prefix = "my.app")
public class ConfigProperties {
  private int maxAttempts;
  private long backOffDelay;

  public int getMaxAttempts() {
    return maxAttempts;
  }

  public void setMaxAttempts(int maxAttempts) {
    this.maxAttempts = maxAttempts;
  }

  public void setBackOffDelay(long backOffDelay) {
    this.backOffDelay = backOffDelay;
  }

  public long getBackOffDelay() {
    return backOffDelay;
  }

如何将my.app.maxAttempts和my.app.backOffdelay的值注入Spring Retry注释?在下面的示例中,我想将maxAttempts的值10和500Lof的退避值替换为配置属性的相应引用.

@Retryable(maxAttempts=10,include=TimeoutException.class,backoff=@Backoff(value = 500L))
最佳答案
spring-retry-1.2.0开始,我们可以在@Retryable注释中使用可配置属性.

使用“maxAttemptsExpression”,请参阅以下代码以了解用法,

 @Retryable(maxAttemptsExpression = "#{${my.app.maxAttempts}}",backoff = @Backoff(delayExpression = "#{${my.app. backOffDelay}}"))

如果使用任何小于1.2.0的版本,它将无法工作.此外,您不需要任何可配置的属性类.

总结

以上是脚本之家为你收集整理的如何在Spring Boot中将配置属性注入Spring Retry注释?全部内容,希望文章能够帮你解决如何在Spring Boot中将配置属性注入Spring Retry注释?所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

脚本之家官方公众号

微信公众号搜索 “ 程序精选 ” ,选择关注!

微信公众号搜索 “ 程序精选 ” ,选择关注!
精选程序员所需精品干货内容!

脚本之家官方公众号

微信公众号搜索 “ 程序精选 ” ,选择关注!

微信公众号搜索 “ 程序精选 ”
精选程序员所需精品干货内容!