解决@Value注解对于静态属性不支持的问题

使用@Value注解读取配置文件中的内容,如果映射到普通属性上,就有效,如图1:。如果映射到静态属性上,就没有效果,取到空值,如图2
图1
图2
如果想要解决这个问题,可以在要映射的静态属性上面添加一个set方法,把@Value属性注入到set方法上面。如下所示:
private static String namespace;
@Value("${web.service.namespace}")
public void setNamespace(String namespace) {
HelloController.namespace = namespace;
}
在这里插入图片描述
还有最重要的一点:这个类要被Spring容器扫描到,要加上注解@Component 。
参考博客https://blog.csdn.net/mononoke111/article/details/81088472?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task


版权声明:本文为ab3344556677原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。