yaml文件学习笔记
01 介绍
YAML 是 "YAML Ain't Markup Language" 的递归缩写。在开发的这种语言时,YAML 的意思其实是:"Yet Another Markup Language"(仍是一种标记语言)
非常适合用来做以数据为中心的配置文件
02 基本语法
- ---表示文件的开始
- key: value kv之间有空格
- 大小写敏感
- 使用缩进表示层级关系
- 缩进不允许使用tab,只允许空格
- 缩进的空格数不重要,只要相同层级的元素左对齐即可
- '#'表示注释
- 字符串无需加引号,如果要加,''与""表示字符串内容,单引号会转义(对内容的特殊字符进行转义),双引号为一般字符串(表达真实意思,不需要再被转义)
03 数据类型
# 字面量:单个的、不可分割的值,date、boolean、string、number、null
k: v
# 对象:键值对的集合,map、hash、set、object
k:
k1: v1
k2: v2
k: {k1:v1,k2:v2} # 行内写法
# 数组:一组按次序排列的值,array、list、queue
k:
- v1
- v2
k: [v1,v2] # 行内写法:
示例:
@Data
public class Person {
private String userName;
private Boolean boss;
private Date birth;
private Integer age;
private Pet pet;
private String[] interests;
private List<String> animal;
private Map<String, Object> score;
private Set<Double> salarys;
private Map<String, List<Pet>> allPets;
}
@Data
public class Pet {
private String name;
private Double weight;
}
# yaml表示以上对象
person:
userName: zhangsan
boss: false
birth: 2019/12/12 20:12:33
age: 18
pet:
name: tomcat
weight: 23.4
interests: [篮球,游泳]
animal:
- jerry
- mario
score:
english:
first: 30
second: 40
third: 50
math: [131,140,148]
chinese: {first: 128,second: 136}
salarys: [3999,4999.98,5999.99]
allPets:
sick:
- {name: tom}
- {name: jerry,weight: 47}
health: [{name: mario,weight: 47}]
- 判断某个值是否存在,存在就使用,不存在使用默认值

yaml文件学习笔记的更多相关文章
- PHP操作XML文件学习笔记
原文:PHP操作XML文件学习笔记 XML文件属于标签语言,可以通过自定义标签存储数据,其主要作用也是作为存储数据. 对于XML的操作包括遍历,生成,修改,删除等其他类似的操作.PHP对于XML的操作 ...
- java io文件学习笔记
File f = new file("D:"+File.separator+"test.txt"); File.separator跨系统文件分隔符 f.crea ...
- Python 文件学习笔记
程序1 在上一题的基础上扩展,用户可以随意输入要显示的行数. 如输入2:5表示打印第2行到第5行的内容: 输入:2表示打印从开头到第2行的内容: 输入4:表示打印从第4行到结尾的内容: 输入:表示打印 ...
- 《C++ Primer Plus》第17章 输入、输出和文件 学习笔记
流是进出程序的字节流.缓冲区是内存中的临时存储区域,是程序与文件或其他I/O设备之间的桥梁.信息在缓冲区和文件之间传输时,将使用设备(如磁盘驱动器)处理效率最高的尺寸以大块数据的方式进行传输.信息在缓 ...
- (转)AIX的Dump文件学习笔记
原文:http://czmmiao.iteye.com/blog/1144999 DUMP文件概述 为了增强故障分析能力,IBM的服务器增加了对设备故障当前环境的保存功能,就是保存一份设备故障时的内存 ...
- Python读写文件学习笔记
一. 基础 1.创建文件夹 import os os.makedirs('I:\\pythonWorkPace') # 创建文件夹 2. 获取文件夹里面文件列表 import os # os.make ...
- Git学习笔记(3)——撤销修改和文件的删除
本文主要记录了git中,错误的撤销和文件的删除. 撤销修改 这里有3中情况 改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file. 不但改乱了工作区某个 ...
- [原创]java WEB学习笔记99:Spring学习---Spring Bean配置:自动装配,配置bean之间的关系(继承/依赖),bean的作用域(singleton,prototype,web环境作用域),使用外部属性文件
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- springmvc学习笔记--支持文件上传和阿里云OSS API简介
前言: Web开发中图片上传的功能很常见, 本篇博客来讲述下springmvc如何实现图片上传的功能. 主要讲述依赖包引入, 配置项, 本地存储和云存储方案(阿里云的OSS服务). 铺垫: 文件上传是 ...
随机推荐
- 从零开始, 开发一个 Web Office 套件 (2): 富文本编辑器
书接前文: 从零开始, 开发一个 Web Office 套件 (1): 富文本编辑器 这是一个系列博客, 最终目的是要做一个基于HTML Canvas 的, 类似于微软 Office 的 Web Of ...
- 什么是以特性为核心的持续交付|阿里巴巴DevOps实践指南
编者按:本文源自阿里云云效团队出品的<阿里巴巴DevOps实践指南>,扫描上方二维码或前往:https://developer.aliyun.com/topic/devops,下载完整版电 ...
- PyCharm破解无限试用
一:安装插件 1.打开PyCharm,进入后,点击左上角File,在点击Settings(设置). 2.进入后,点击Plugins,在点击(2.设置图标),然后点击Manage Plugin Repo ...
- kubernetes之kubeadm 安装kubernetes 高可用集群
1. 架构信息 系统版本:CentOS 7.6 内核:3.10.0-957.el7.x86_64 Kubernetes: v1.14.1 Docker-ce: 18.09.5 推荐硬件配置:4核8G ...
- 学习Java第14天
今天成功安装了MySQL Visual Studio Code 准备试着学习HTML+CSS了 明天开始认识HTML和CSS学会软件的使用 今天安装调试这些东西属实费了点劲,可能电脑配置较低吧,还有点 ...
- 在IDE中普通项目打成jar包
第一步: File---->Project Structe 第二步: 选择From modules.. 第三步:选择对应的Module和对应的JAR,然后点击ok 第四步:选择好对应的属性,然后 ...
- SpringBoot+MyBatis通过ScriptRunner读取SQL文件
@Component public class InitDBTables implements CommandLineRunner { @Autowired DataSource dataSource ...
- 长时间不操作Navicat或Putty会断线?
问题描述 今天发现只要一直不使用Putty,发现就会"卡住",还有Navicat连接数据库也有类似问题. 问题分析 Linux或者数据库都想节省连接资源呗. 问题解决 那就隔一段时 ...
- Android 实用开源库(不定期更新)
ZXing 极其好用的二维码开源库. GayHub:https://github.com/zxing/zxing MPAndroidChart MPAndroidChart 是 Android 一个强 ...
- spring 事务的传播级别和隔离级别
1.事务的传播级别 1)@Transactional(propagation=Propagation.REQUIRED):默认的spring事务传播级别,使用该级别的特点是,如果上下文中已经存在事务, ...