1.yml简介
YAML (YAML Ain’t a Markup Language)YAML不是一种标记语言,通常以.yml为后缀的文件,是一种直观的能够被电脑识别的数据序列化格式,并且容易被人类阅读,容易和脚本语言交互的,可以被支持YAML库的不同的编程语言程序导入,一种专门用来写配置文件的语言。可用于如: Java,C/C++, Ruby, Python, Perl, C#, PHP等。在SpringBoot中yml可作为配置文件使用
2.语法
以空格缩进来控制层级关系,空格个数并不重要,只要左边空格对齐视为同一级别,对大小写敏感,支持字面量,对象,数组,以及复合结构。
注意字符串不需要加双引号
例如
yml:
str: 字符串不要双引号
num: 66
birth: 2021/7/26
3.获取yml的值
- 在resource目录下创建application.yml文件
- 写入上诉代码
- 创建测试类
package cn.awz.yml;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import java.util.Date;
@Component
@ConfigurationProperties(prefix = "yml")
public class YmlTest {
private String str;
private int num;
private Date birth;
public String getStr() {
return str;
}
public void setStr(String str) {
this.str = str;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public Date getBirth() {
return birth;
}
public void setBirth(Date birth) {
this.birth = birth;
}
@Override
public String toString() {
return "YmlTest{" +
"str='" + str + '\'' +
", num=" + num +
", birth=" + birth +
'}';
}
}
package cn.awz;
import cn.awz.yml.YmlTest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.config.YamlMapFactoryBean;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {
@Autowired
private YmlTest ymlTest;
@GetMapping("yml")
public YmlTest yml() {
System.out.println(ymlTest);
return ymlTest;
}
}
启动项目
ok