YML 文件
YML 文件 基于 YAML (YAML Ain’t Markup Language)语言编写的配置文件  是专门编写配置文件的语言 其相比与 Properties 文件  XML 文件都要简洁强大 比 JSON 格式方便 其设计目标就是方便读写

YML文件基本语法
大小写敏感
使用缩进表示层级关系
缩进时不允许使用Tab键 只允许使用空格
缩进的空格数目不重要 只要相同层级的元素左侧对齐即可
#表示注释 从# 到行尾 都会被解析器忽略

YML文件 基本数据结构
YAML 支持三种数据结构
对象(键值对的集合)
数组(一组按次序排列的值)
纯量(指最基本的 不可再分的值 有字符串 布尔值 整数 浮点数 时间 日期)

对象
对象使用冒号结构表示 在编写时 : 后面需要有一个空格
下面这三种都是对象的编写方式:
val: 张三
bean: { id: 20,name: 张三 }
bean:
id: 20
name: 张三
转为 Javascript 分别为
{val:张三}
{bean: { id: 20,name: 张三 }}
{bean: { id: 20,name: 张三 }}

数组
在编写时 : 后面需要有一个空格
下面这三种都是数组的编写方式
arr: 1, 3, 4
arr: [1, 3, 4]
list:
- lista
- listb
上述代码转为 Javascript 分别为:
arr: [1, 3, 4]
arr: [1, 3, 4]
list: [lista, listb]

纯量
纯量指 最基本的 不可再分的值 有字符串 布尔值 整数 浮点数 时间 日期
# 布尔值用true和false表示
test1: true
# 浮点数表示
test2: 19.9
# 时间表示
test3: 2019/04/07
# 空字符串表示 注意:~ null NULL 都为空字符串
test4: NULL

key:(空格) value 表示一个键值对 冒号之后的空格 不能少
以空格的缩进来表示层级关系 即只要是左对齐的列都是属于同一层级的
server:
    port: 8080
    path: /hello
port和path是属于同一层级的 都是属于server下的
属性和属性值都是对大小写敏感的  每句话的结尾没有分号 不需要任何符号; 在英文输入法的状态下

YML文件值写法
字面量 数字 字符串 布尔值等
key: (空格) value 如上述例子 但是需要注意的是——字符串类型是默认不用加上双引号或者单引号的 在yml格式中 双引号和单引号都有各自不同的含义
" "(双引号):在双引号里面的字符串若含有特殊字符是会被转义的 如:”/n“是会进行换行的
'  '(单引号):在单引号里面的字符是不会将含有特殊字符进行转义的 如:'/n'是不会进行换行的 打印出来仍是/n

对象、Map(属性-值这样键值对形式得)
直接在下一行些该对象属性和值的关系
第一种写法
student:
    name: zhangsan
    age: 22

第二种写法 也称为行内写法
student: {name: zhangsan,age: 22}
需要注意空格和缩行

数组(List Set):
用- 值表示数组中的一个元素
第一种方法(需注意空格和缩进):
colors:
    - red
    - black
    - yellow
    - green

第二种方法 即行内方式:
colors: [red,black,yellow,green]