如何使用 Spring 4 注入键值映射?

How to inject a key-value map with Spring 4?

VI=Visa
MC=Mastercard
...

我可以使用 Spring 将其自动注入到 Map<String, String> 中吗?

喜欢:

@Resource("${myfile.properties}")
private Map<String, String> creditcards;

这可能吗?

发现一个不错的功能:

@Bean(name = "credit")
public PropertiesFactoryBean mapper() {
    PropertiesFactoryBean bean = new PropertiesFactoryBean();
    bean.setLocation(new ClassPathResource("credit.properties"));
    return bean;
}

将其注入任何地方,如下所示:

@Resource(name = "credit")
private Properties credit;

你看到了吗:

此人在问题中使用地图。那么也许你可以使用这个?否则你可以使用属性 class (https://docs.oracle.com/javase/7/docs/api/java/util/Properties.html) 如果你真的需要地图,你可以将属性对象转换为地图