使用@Value注解读取配置文件中的内容,如果映射到普通属性上,就有效,如图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
解决@Value注解对于静态属性不支持的问题
最新推荐文章于 2024-09-16 09:23:49 发布