2020-07-31
Java培训
好程序员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}
开班时间:2021-04-12(深圳)
开班盛况开班时间:2021-05-17(北京)
开班盛况开班时间:2021-03-22(杭州)
开班盛况开班时间:2021-04-26(北京)
开班盛况开班时间:2021-05-10(北京)
开班盛况开班时间:2021-02-22(北京)
开班盛况开班时间:2021-07-12(北京)
预约报名开班时间:2020-09-21(上海)
开班盛况开班时间:2021-07-12(北京)
预约报名开班时间:2019-07-22(北京)
开班盛况Copyright 2011-2023 北京千锋互联科技有限公司 .All Right 京ICP备12003911号-5 京公网安备 11010802035720号