获取yml文件数据
yml数据格式
对象:键值对集合
可以调用纯量
person:
name: 张三
#name: ${name}
person: {name: 张三}
数组:一组按次序排序的值
可以调用纯量
address:
- 北京
- 上海
- ${名称}
address: [北京,上海]
纯量:单个的、不可在分的值
#忽略转义字符
msg1: 'hello \n world'
#可识别转义字符
msg2: "hello \n world"
获取数据
@Value
获取对象值
@Value("${person.name}")
private String name;
获取数组值
@Value("${address[0]}")
private String address;
获取纯量值
@Value("${msg1}")
private String msg1;
@Value("${msg2}")
private String msg2;
Environment
@Autowired
private Environment ev;
System.out.println(ev.getProperty("address[0]"));
System.out.println(ev.getProperty("name"));
System.out.println(ev.getProperty("employee.name"));
@ConfigurationProperties
@Component
@ConfigurationProperties(prefix = "person")
public class Person {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return super.toString();
}
}
@Autowired
Person person;
System.out.println(person.getName());