我是靠谱客的博主 明理冬天,最近开发中收集的这篇文章主要介绍yaml文件格式说明yaml简介基本语法YAML支持的数据结构引用单文件多配置文本块显示指定类型,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

yaml文件格式说明

  • yaml简介
  • 基本语法
  • YAML支持的数据结构
  • 引用
  • 单文件多配置
  • 文本块
  • 显示指定类型

yaml简介

yaml文件的后缀为.yml或者.yaml。
是一个可读性高,用来表达数据序列的格式。YAML的意思是:仍是一种标记语言,但为了强调这种语言以数据为中心,而不是以标记语言为重点。

基本语法

  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进时不允许使用tab键,只允许使用空格
  • 缩进的空格数目不重要,只要相同层级的元素左右对齐即可
  • #表示注释,从这个字符一直到行尾,都会被解释器忽略
  • 锚点&:标注一个内容,锚点名称自定义
  • 引用*:使用被标注的内容<<:*锚点名
  • 在yaml里,用on、1、true来表示true,用off、0、false来表示false
  • yaml中,空值可以用null或者~来表示。

YAML支持的数据结构

  • 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes)/ 字典(dictionary)
    eg:
    对象的一组键值对,使用冒号结构表示
    name:Tom
    age: 12
    eg:
    yaml也允许另一种写法,将所有键值对写成一个行内对象
    hash: {
    name: Tom
    age: 12
    }
  • 数组:一组按次序排列的值,又称为序列(sequence)/ 列表(list)
    eg:
    一组连词线开头的行,构成一个数组
    animal
    - Cat
    - Dog
    eg:
    数组也可以采用行内表示法
    animal: [Cat, Dog]
  • 纯量(scalars):单个的、不可再分的值
    eg:
    1 字符串 布尔值 整数 浮点数 Null
    2 时间日期
  • 复合结构:对象和数组可以结合使用,形成复合结构
    eg:
    languages:
    - Ruby
    - Perl
    - Python
    websites:
    YAML: yaml.org
    Ruby: ruby-lang.org
    Python: python.org
    Perl: use.perl.org

补充说明:纯量
数值直接以字面量的形式表示
number: 12.30
布尔值用true和false表示
isSet: true
null用 ~ 表示
parent: ~
时间采用 ISO8601 格式
iso8601: 2001-12-14t21:59:43.10-05:00
日期采用复合 iso8601 格式的年、月、日表示
date: 1976-07-31
YAML 允许使用两个感叹号,强制转换数据类型
e: !!str 123
f: !!str true

引用

  1. 引用会用到 &锚点符合和 *星号符号,&用来建立锚点,<< 表示合并到当前数据, 用来引用锚点。
jack: &jack
name: Jack
age: 20
dept:
id: D15D554F6D68A4E88E
<<: *jack

上面最终相当于如下:

jack:
name: Jack
age: 20
dept:
id: D15D554F6D68A4E88E
name: Jack
age: 20
  1. 文件内引用,引用已经定义好的变量
base.host: https://chenpi.com
add.person.url: ${base.host}/person/add

单文件多配置

#公共配置
spring:
profiles:
active: pro # 指定使用哪个文档块
#开发环境配置
spring:
profiles: dev # profiles属性代表配置的名称
server:
port: 8080
#生产环境配置
spring:
profiles: pro
server:
port: 8081

文本块

如果你想引入多行的文本块,可以使用|符号,注意在冒号:|符号之间要有空格。双引号能转义特殊字符:

person:
name: |
Hello Java!!
I am fine!
Thanks! GoodBye!
person:
name: "Hello Java!!nI am fine!nThanks! GoodBye!"

显示指定类型

显示指定某些值的类型,可以使用!(感叹号)显式指定类型。
!单叹号通常是自定义类型,!!双叹号是内置类型。

# 指定为字符串
string.value: !!str HelloWorld!
# !!timestamp指定为日期时间类型
datetime.value: !!timestamp 2021-04-13T02:31:00+08:00

最后

以上就是明理冬天为你收集整理的yaml文件格式说明yaml简介基本语法YAML支持的数据结构引用单文件多配置文本块显示指定类型的全部内容,希望文章能够帮你解决yaml文件格式说明yaml简介基本语法YAML支持的数据结构引用单文件多配置文本块显示指定类型所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部