好程序员Java 培训分享 SpringBoot -YAML , 前期概要 : YAML 是一种简洁的非标记语言 (YAML Ain ’ t Markup Language),YAML 以数据为中心,使用空白,缩进,分行组织数据,从而使得表示更加简洁易读, 常用于作为配置文件 , 比 json 更加简洁。
数据类型
字面量:不可再分的值( 基本类型 )
对象:键值对的集合,又称为映射(mapping ) / 哈希( hashes ) / 字典( dictionary )
数组:一组按次序排列的值,又称为序列(sequence ) / 列表( list )
对象和数组可以任意嵌套组复杂的数据结构
适用范围
由于实现简单,解析成本很低,YAML 特别适合在脚本语言中使用。列一下现有的语言实现: Ruby , Java , Perl , Python , PHP , OCaml , JavaScript 。除了 Java ,其他都是脚本语言 .
YAML 比较适合做序列化。因为它是宿主语言数据类型直转的,由于兼容性问题,不同语言间的数据流转建议现在不要用 YAML.
YAML 做配置文件也不错。比如 Ruby on Rails 的配置就选用的 YAML 。对 ROR 而言,这很自然,也很省事 .
二、语法与基本规则
基本语法
key: value
基本语法规则
大小写敏感
使用缩进表示层级关系,同层元素左侧对齐
禁止使用tab 缩进,只能使用空格键
缩进长度没有限制,只要元素对齐就表示这些元素属于一个层级。
使用# 表示注释
字符串可以不用引号标注 ,但必要的时候可以用引号
使用双引号表示字串时,可用倒斜线(\ )进行特殊字符转义
三、基本类型( 字面量 )
常用的基本类型
| 类型 | 说明 | | ------ | ------------------------------------------------- | | 字符串 | str: " 字符串 " 或者 str: ' 字符串 ' 或者 str: 字符串 | | 布尔值 | bool: true 或者 bool: true | | 整数 | number: 100 | | 浮点数 | float: 3.14 | | Null | msg: ~ | | 时间 | date: 2019-08-23T02:02:00.1z | | 日期 | date: 2020-11-22 |
字符串
说明
使用单引号' ' 或双引好 "" 或不使用引号
栗子
name: 'wener'
email: 123456@qq.com
msg: ' 转义 \n 字符串 '
dec: " 不转义转义 \n 字符串 "
注意事项
双引号不会对特殊字符转义
单引号会转义特殊字符
四、数组
说明
用- 值表示数组中的一个元素
栗子
languages:
- JAVA
- JavaScript
- SQL
五、对象
说明
在下一行来写对象的属性和值的关系 ;注意缩进
栗子
user:
name: 压妹儿
age: 18
activate: false
birth: 2000-12-12
address:
- 上海
- 广州
- 武汉
# 行内写法 ( 不推荐 )
details: {phone: "110",head:/img/default.png}
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69913864/viewspace-2708285/,如需转载,请注明出处,否则将追究法律责任。