YAML基础教程
一、YAML介绍
YAML参考了其他多种语言,包括:XML、C语言、Python、Perl以及电子邮件格式RFC2822。Clark Evans在2001年5月在首次发表了这种语言,另外Ingy döt Net与Oren Ben-Kiki也是这语言的共同设计者。
YAML是"YAML Ain't a Markup Language"(YAML不是一种置标语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:"Yet Another Markup Language"(仍是一种置标语言),
YAML的特性
1、YAML的可读性好
2、YAML和脚本语言的交互性好
3、YAML使用实现语言的数据类型
4、YAML有一个一致的信息模型
5、YAML可以基于流来处理
6、YAML表达能力强、扩展性好
二、YAML语法
基本语法规则如下:
        大小写敏感
        使用缩进表示层级关系
        缩进时不允许使用Tab键,只允许使用空格。
        缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
# 表示注释,从这个字符一直到行尾,都会被解析器忽略。
YAML 支持的数据结构有三种:
        对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)
        数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)
        纯量(scalars):单个的、不可再分的值
YAML的语法和其他高阶语言类似,并且可以简单表达清单、散列表,标量等资料形态。连续的项目通过减号“-”来表示,map结构里面的key/value对用冒号“:”来分隔。样例如下:
house:
  family:
    name: Doe
    parents:
      - John
      - Jane
    children:
      - Paul
      - Mark
      - Simone
  address:
    number: 34
    street: Main Street
    city: Nowheretown
    zipcode: 12345
    
注意:
    字串不一定要用双引号标识;
    在缩排中空白字符的数目并不是非常重要,只要相同阶层的元素左侧对齐就可以了(不过不能使用TAB字符);
    允许在文件中加入选择性的空行,以增加可读性;
    在一个档案中,可同时包含多个文件,并用“——”分隔;
    选择性的符号“...”可以用来表示档案结尾(在利用串流的通讯中,这非常有用,可以在不关闭串流的情况下,发送结束讯号)。
YAML文件扩展名通常为.yaml 如example.yaml
2.2.1 list
列表的所有元素均使用"-"开头,例如:
      - John
      - Jane
2.2.2 dictionary
字典通过key与value进行标识,例如:
   number: 34
    street: Main Street
    city: Nowheretown
    zipcode: 12345
也可以将key:value放置于{}中进行表示,例如:
    {street: Main Street,city: Nowheretown,zipcode: 12345}
YAML基础教程的更多相关文章
- Spring Boot 基础教程系列学习文档
		
Spring Boot基础教程1-Spring Tool Suite工具的安装 Spring Boot基础教程2-RESTfull API简单项目的快速搭建 Spring Boot基础教程3-配置文件 ...
 - Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解
		
前情回顾: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方式(Res ...
 - Spring Cloud Alibaba基础教程:使用Nacos作为配置中心
		
通过本教程的前两篇: <Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现> <Spring Cloud Alibaba基础教程:支持的几种服务消费方 ...
 - YAML 基础
		
YAML 基础 简介 对象 数组 常量 引用 1. 简介 YAML 是专门用来写配置文件的语言,非常简洁和强大! 它的基本语法规则有: 大小写敏感: 使用缩进表示层级关系: 缩进时不允许使用 Tab ...
 - SpringCloud2.0 Config 分布式配置中心 基础教程(十一)
		
Spring Cloud Config 简介 Spring Cloud Config为分布式系统中的外部化配置提供服务器和客户端支持.使用Config Server,您可以在所有环境中管理应用程序的外 ...
 - Envoy 基础教程:使用 Unix Domain Socket(UDS) 与上游集群通信
		
Envoy Proxy 在大多数情况下都是作为 Sidecar 与应用部署在同一网络环境中,每个应用只需要与 Envoy(localhost)交互,不需要知道其他服务的地址.然而这并不是 Envoy ...
 - Spring Cloud Alibaba基础教程-Nacos(三)
		
在Spring Cloud Alibaba基础教程-Nacos(二)当中学习了,如何使用 nacos图形化界面操作 ,使用Nacos部署集群,下面我们开始Nacos最后一篇的学习 ,如果对你有帮助,记 ...
 - Spring Cloud Alibaba基础教程-Nacos(二)
		
在Spring Cloud Alibaba基础教程-Nacos(一)当中学习了,如何从 nacos当中 通过Java的方式获取值,以及连接数据库,下面我们开始第二篇的学习 ,如果对你有帮助,方便下次寻 ...
 - Spring Cloud Alibaba基础教程-Nacos(一)
		
2019快结束,也有很久没写博客了,今天我们来谈谈Nacos,如果对您有帮助,麻烦左上角点个关注 ,谢谢 ! 嘻嘻 今天先写第一篇 文章目录 为什么要使用Nacos Eureka 闭源 Nacos的优 ...
 
随机推荐
- .haccess  配置生效
			
前言:网上看到有写用.haccess会影响到网站速率之类的,这里只是讲解自己的一点配置.haccess的心得,其它的之后再讨论哈~ 1.普通配置: 网上都有的那种配置 apache/conf/ht ...
 - Python并发编程的几篇文章
			
Python几种并发实现方案的性能比较 http://www.elias.cn/Python/PyConcurrency?from=Develop.PyConcurrency python并发编程 h ...
 - Spring Boot实战:模板引擎
			
虽然现在很多开发,都采用了前后端完全分离的模式,即后端只提供数据接口,前端通过AJAX请求获取数据,完全不需要用的模板引擎.这种方式的优点在于前后端完全分离,并且随着近几年前端工程化工具和MVC框架的 ...
 - Java 面试知识点解析(一)——基础知识篇
			
前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大 ...
 - 提高Maven下载jar包的速度
			
1.提高Maven下载jar包的速度 打开项目所配置的maven包下conf目录下的settings.xml 找到 <mirrors>标签添加一下内容: 1 <!-- 阿里云仓库 ...
 - Django入门一之安装及项目创建
			
1. 习惯性的创建虚拟环境 # 由于我安装也安装了pyhton3所以在前面要加python2 -m F:\Python Script\MyVirtualenv>python2 -m virtua ...
 - ImportError: numpy.core.multiarray failed to import
			
1. ImportError: numpy.core.multiarray failed to import pip install -U numpy http://stackoverflow.com ...
 - 洛谷 P1879 解题报告
			
P1879 [USACO06NOV]玉米田Corn Fields 题目描述 农场主\(John\)新买了一块长方形的新牧场,这块牧场被划分成\(M\)行\(N\)列\((1 ≤ M ≤ 12; 1 ≤ ...
 - Java并发之ReentrantLock
			
一.ReentrantLock简介 ReentrantLock字面意义上理解为可重入锁.那么怎么理解可重入这个概念呢?或者说和我们经常用的synchronized又什么区别呢? ReentrantLo ...
 - ArcGIS 产品体系结构
			
1. 开篇 本文主要从以下几个方面介绍 ArcGIS 的产品体系 2. 详细介绍 2.1 ArcGIS Desktop 参考:[https://blog.csdn.net/hphone/article ...