赞
踩
正如YAML所表示的YAML Ain’t Markup Language,YAML 是一种简洁的非标记语言,文件名后缀为yml,java中经常用它描述配置文件application.yml。YAML以数据为中心,比json/xml等更适合做配置文件。使用空白,缩进,分行组织数据,从而使得表示更加简洁易读。
一边学习规则一边可以在在线Demo这个YAML转化JSON网页中进行上手练习
YAML有以下基本规则:
1、大小写敏感
2、使用缩进表示层级关系
3、禁止使用tab缩进,只能使用空格键
4、缩进长度没有限制,只要元素对齐就表示这些元素属于一个层级。
5、使用#表示注释
6、字符串可以不用引号标注
在同一个yaml文件中,可以用 --- 来分段,这样可以将多个文档写在一个文件中,如下面一个常见的java项目中的环境配置就是使用---来区分三个环境:
a) k:(空格)v:表示一对键值对(空格必须有),以空格的缩进来控制层级关系;只要是左对齐的一列数据,则表示都是同一个层级的。例如如下代码:
- server:
- port: 8081
注意:属性值大小写敏感
a) 字面量(K:空格v):普通的值(数字,字符串,布尔)
i. 字符串默认不用加上单引号或者双引号
ii. “”:双引号;不会转义字符串里面的特殊字符,特殊字符会作为本身想表示的意思,例如:
name: “zhangsan \n lisi” 输出 zhangsan 换行 lisi
iii. ‘’:单引号;会转义特殊字符,特殊字符最终只是一个普通的字符串数据
name: ‘zhangsan \n lisi’ 输出 zhangsan \n lisi
b) 对象/Map(属性和值)(键值对)(k: v)语法示例如下:
- friends:
- lastName: zhangsan
- age: 20
ii. 行内写法:
friends: {lastName: zhangsan,age: 18}
c) 数组(List,Set)(用-值表示数组中的一个元素)语法示例如下:
- pets:
- - cat
- - dog
- - pig
-
ii. 行内写法:
pets: [cat,dog,pig]
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。