Java 将YAML属性绑定到地图<;字符串,列表<;字符串>&燃气轮机;带弹簧靴的类型
我知道如果我像这样将属性放在.yml文件中: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
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]中。知道默认情况下它为什么绑定到带有编号键的地图吗?(使用
贴图也可以观察到)在这种情况下,如果我的钥匙有空格,那么空格将被删除,如何避免?