Java 将YAML属性绑定到地图<;字符串,列表<;字符串>&燃气轮机;带弹簧靴的类型

Java 将YAML属性绑定到地图<;字符串,列表<;字符串>&燃气轮机;带弹簧靴的类型,java,properties,spring-boot,yaml,Java,Properties,Spring Boot,Yaml,我知道如果我像这样将属性放在.yml文件中: list - item 1 - item 2 map: key1: value1 key2: value2 我可以将它们绑定到java.util.List或Set类型。如果yaml属性如下所示: list - item 1 - item 2 map: key1: value1 key2: value2 我可以把它绑在地图上。我想知道是否可以将yml属性绑定到映射类型..尝试添加以下内容: private Map

我知道如果我像这样将属性放在.yml文件中:

list
  - item 1
  - item 2
map:
  key1: value1
  key2: value2
我可以将它们绑定到
java.util.List
Set
类型。如果yaml属性如下所示:

list
  - item 1
  - item 2
map:
  key1: value1
  key2: value2
我可以把它绑在地图上。我想知道是否可以将yml属性绑定到
映射
类型..

尝试添加以下内容:

private Map<String, List<String>> keysList;
结果应该是列表映射:

keysList={key1=[value1,value2],key2=[value2,value3],key3=[value3,value4]}

如果你用这种方式

private Map keysList;
您将获得地图映射

keysList={key1={0=value1,1=value2},key2={0=value2,1=value3},key3={0=value3,1=value4}

谢谢它帮助了我:)我在这里发布了更具描述性的答案

配置类-

@ConfigurationProperties(prefix = "configuration.mymapwithlist")
public class ConfigUtilClass implements IConfigUtilClass {
    private Map<String, List<String>> myMap = new HashMap<>();

    @Override
    public Map<String, List<String>> getMyMap() {
        return myMap;
    }

}

如果您的键有空格,请将键放在[key 4]中。

知道默认情况下它为什么绑定到带有编号键的地图吗?(使用
贴图也可以观察到)在这种情况下,如果我的钥匙有空格,那么空格将被删除,如何避免?