【发布时间】:2020-11-11 23:12:38
【问题描述】:
我是 springmvc 的新手,所以这个问题可能听起来很愚蠢。
我有类似的问题Spring Boot: @Value returns always null。我的例子:
系统属性
<sysproperty key="bar" value="bar_value" />
Bean 配置
@Configuration
public class Foo {
@Value("${bar}")
private String bar;
@Bean(name = "getBar")
public String getBar() {
return bar;
}
}
访问 Bean (index.jsp)
String bar = webApplicationContext.getBean("getBar", String.class); // returns null instead of "bar_value"
但是,如果我将 Bean 配置更改为
@Configuration
public class Foo {
@Value("${bar}")
@Bean(name = "getBar")
public String getBar(String bar) {
return bar;
}
}
然后访问它,返回值是正确的,这可能是什么原因?我知道事情是由框架控制的,所以我对应用程序的实例化过程没有太多了解,非常感谢帮助。
【问题讨论】:
标签: spring-boot javabeans