【问题标题】:How to make final variable when @Value annotation is used使用@Value注释时如何制作最终变量
【发布时间】:2020-02-25 15:58:18
【问题描述】:

我在论坛上读过类似的帖子,但实际上找不到答案。我正在从 application.yaml 文件中读取一个属性,但我想让该变量成为最终变量。但是编译器不允许我这样做,并说变量可能没有被初始化。我想要做的是使用 final 如下。所以这个变量是在控制器类中定义的。

 @Value("${host.url}")
 private final String url;

那么我该怎么做呢?

【问题讨论】:

标签: spring spring-boot


【解决方案1】:

实现它的唯一方法是使用构造函数注入。

@Component
public class MyBean {

    private final String url;

    public MyBean(@Value("${host.url}") String url) {
        this.url = url;
    }
}

【讨论】:

    猜你喜欢
    • 2015-03-13
    • 1970-01-01
    • 2013-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-22
    相关资源
    最近更新 更多