从属性文件中读取Map并使用spring注释加载@Value

Abd*_*lah 3 java spring

我有一个(键/值)列表需要填充到spring bean上的地图:

dmin.details.fieldsMap=name,Abdullah,\
             street,Zayed,\
             phone,+201020102010
Run Code Online (Sandbox Code Playgroud)

我使用下面的列表工作正常:

属性:

dmin.details.fields =阿卜杜拉扎耶德,+ 201020102010

呼叫:

@Value("#{'${dmin.details.fields}'.split(',')}")
private List<String> fields;
Run Code Online (Sandbox Code Playgroud)

任何人都可以建议这在春天是否可行?

小智 13

application.properties:

property.map={first:value, second:value}
Run Code Online (Sandbox Code Playgroud)

然后在Java代码中,您可以:

@Value("#{${property.map}}")
Map<String, String> map;
Run Code Online (Sandbox Code Playgroud)

  • 它应该是`property.map = {first:'value',second:'value'}`.另外值得注意的是它需要春季4.1+(https://jira.spring.io/browse/SPR-9472) (2认同)