问题描述
如何在 @Backoff
注释中使用属性文件中的属性来自定义延迟时间?
此属性仅将常量作为值。
我尝试使用构造函数注入初始化 someProperty
字段,但没有帮助,IntellijIDEA 显示一条消息:“属性值必须是常量”。
此代码无法编译:
public class SomeClass {
private final long someProperty;
public SomeClass (@Value("${someProperty}") Long someProperty) {
this.someProperty = someProperty;
}
@Retryable(value = RuntimeException.class,maxAttempts = 2,backoff = @Backoff(delay = someProperty))
public SomeObject getSomeObject() {
return new SomeObject();
}
}
我可以像这样使用 delayExpression
属性吗:
@Retryable(value = RuntimeException.class,backoff = @Backoff(delayExpression = "${someProperty}"))
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)