如果我有一个通过XML文件发送的PropertyPlaceholderConfigurer,是否可以让Spring @Configuration使用它作为它处理的所有bean的属性源?
@Configuration
@ComponentScan(value = { "x.y.z })
@ImportResource({ "classpath:remote-properties/applicationContext.xml",})
public class CoreConfiguration implements TransactionManagementConfigurer {
@Resource(name = "com.c.h.c.PropertyPlaceholderConfigurer")
public PropertyPlaceholderConfigurer pp;
@Bean
public PropertyPlaceholderConfigurer propertiesfactorybean() {
return pp;
}
}
有了上面的内容,它永远不会碰到pp上的断点.如果删除@Bean和方法,则可以验证是否填充了pp.那么如何在配置中注册呢?
最佳答案
我觉得很傻.我在@Value注释之一上缺少右花括号.我无法想象我看了多少次却错过了.
因此,在您@ImportResource所在的应用程序上下文中使用PropertyPlaceHolderConfigurer可以正常工作.您甚至不需要将其作为@Resource引入.