使用java config创建bean我想将非字符串属性作为方法参数注入。 我添加了一个包含List和Map的地图PropertySource:
Map props = new Hashmap();
List list = new ArrayList();
list.add("myValue");
props.put("listKey",list);
Map map = new Hashmap()
map.put("key1","Value1")
props.put("mapKey",map)
environment.getPropertySources().addFirst(
new MapPropertySource("myPropertySource",props))
和我的@Bean方法:
@Configuration
class AppConfig{
public MyBean myBean(@Value("#{myPropertySource['mapKey']}")Map map,
@Value("#{myPropertySource['listKey']}")List list){
return new MyBean(list,map)
}
}
这不起作用,我得到一个例外:
Field or property 'myPropertySource' cannot be found on object of type 'org.springframework.beans.factory.config.BeanExpressionContext
有关如何做到这一点的任何帮助? 谢谢