我可以在另一个注释中使用Spring @Value变量的属性吗?

时间:2018-08-28 21:16:29

标签: java spring spring-el

我目前有一个来自属性文件的变量,声明为:

    @Value("${retryLimit}")
    private int retryLimit;

在这种情况下,我想在注释中使用而不是硬编码的常量“ 3”:

    @Retryable(maxAttempts = 3, backoff = @Backoff(delay = 2000))

这可能吗?

我尝试过:

    @Retryable(maxAttempts = @Value("${retryLimit}"), backoff = @Backoff(delay = 2000))

但是我收到以下编译错误:

"Incompatible types. Found: 'org.springframework.beans.factory.annotation.Value', required: 'int'"

1 个答案:

答案 0 :(得分:0)

无需在另一个注释标签中使用 @value。只需使用 @value。它会起作用。

@Retryable(maxAttempts = "${retryLimit}", backoff = @Backoff(delay = 2000))