前言:很多时候,我们需要使用到yml的配置文件中,自己需要定义的字段,但是如何获取呢?
此处不需要任何其他依赖,spring的独立自带的
1.这种方式,是将yml变成property对象
test:
name: tom
age: 28
testList: ["h","q","t","t","e","s","t"]
YamlPropertiesFactoryBean yaml = new YamlPropertiesFactoryBean();
//此处是为了找到对应yaml文件的位置
yaml.setResources(new ClassPathResource("application.yml"));
Properties properties = yaml.getObject();
String name = (String) properties.get("test.name");
Integer age = (Integer) properties.get("test.age");
//debug显示为 [0] [1] [2]
String testList = (String)properties.get("test.testList[1]");
System.out.println(name);
System.out.println(age);
System.out.println(testList);
//print:
tom
28
q
2.变成map形式来获取yaml对象配置信息
YamlMapFactoryBean yamlMap = new YamlMapFactoryBean();
yamlMap.setResources(new ClassPathResource("application.yml"));
Map<String, Object> map = yamlMap.getObject();
System.out.println(map);
//{server={port=8080}, test={name=tom, age=28, list=[h, q, t, t, e, s, t]}}