我正在开发一个spring boot应用程序,我在 application.properties 中配置我的属性。我的问题是如何在 .properties 文件中配置地图属性。对于String它工作正常,但不适用于map。
@Service(value = "myService")
@PropertySource(value = "classpath:application.properties")
@EnableConfigurationProperties
public class MyService
{
@Value("${my.map.config}")
private Map mapProperty;
public Map<String, String> getMapProperty()
{
return mapProperty;
}
public void setMapProperty(Map<String, String> mapProperty)
{
this.mapProperty = mapProperty;
}
}
应用程序属性:
my.map.config.key1 = value1
my.map.config.key2 = value2
我还尝试如下更改我的 application.properties 文件,但仍然无法正常工作:
my.map.config = {key1: 'value1', key2: 'value2'}
错误:
原因:java.lang.IllegalStateException:无法将类型“java.lang.String”的值转换为所需类型“java.util.Map”:找不到匹配的编辑器或转换策略
让我知道如何通过 application.properties 文件让它工作?