2
我創建了一個Spring @Configuration註釋類,我想爲它自動裝載一個ResourceLoader,以便我可以在一個@Bean方法中使用它來查找由串。當我運行應用程序並初始化上下文時,我得到一個NPE訪問autowired字段,並且在調試模式下它顯示爲空/未設置。我錯在期待resourceLoader存在嗎?我錯誤地斷言配置bean的自動裝配發生在其方法被調用之前? XML配置裝載這個bean被打上<方面:註解配置/>Spring @Configuration類需要自動裝配
@Configuration
public class ClientConfig {
@Autowired
private ResourceLoader resourceLoader;
public @Bean
String configHome() {
return System.getProperty("CONFIG_HOME");
}
public @Bean
PropertiesFactoryBean appProperties() {
String location = "file:" + configHome() + "/conf/webservice.properties";
PropertiesFactoryBean factoryBean = new PropertiesFactoryBean();
factoryBean.setLocation(resourceLoader.getResource(location));
return factoryBean;
}
}