Java 如何通过前缀获取应用程序属性映射?

Java 如何通过前缀获取应用程序属性映射?,java,spring,properties,hashmap,Java,Spring,Properties,Hashmap,我有一个名为FooConfig的注入类,它用于通过以下方式获取应用程序属性: @Value("#{applicationProperties['foo.someProp']}") private String someProp; public String getSomeProp() { return this.someProp; } 实际属性位于文件foo.properties中,并以我的context.xml(通常Spring格式)加载到注入的bean中 我的问题很简单:我是否可

我有一个名为
FooConfig
的注入类,它用于通过以下方式获取应用程序属性:

@Value("#{applicationProperties['foo.someProp']}")
private String someProp;

public String getSomeProp() {
    return this.someProp;
}
实际属性位于文件
foo.properties
中,并以我的
context.xml
(通常
Spring
格式)加载到注入的bean中

我的问题很简单:我是否可以通过前缀(或regex)指定属性集合,而不是获取单数值,以便它获取
映射中匹配的所有属性

例如

/@ValueMap显然是为说明而编造的
@ValueMap(“#{applicationProperties['foo.prefix.*']}”)
私有地图;
公共映射getSomePropMap(){
返回此.somePropMap;
}
它将返回名称以foo.prefix开头的所有属性的映射


我知道我可以使用一个方法返回地图,并在其中逐个添加属性,这些属性的连接方式与第一个示例相同,但我正在寻找批量快捷方式。

前面的问题有用吗?
//@ValueMap is obviously made up for illustration
@ValueMap("#{applicationProperties['foo.prefix.*']}")
private Map<String, String> somePropMap;

public Map<String, String> getSomePropMap() {
    return this.somePropMap;
}