YAML基本語法


1、YAML基本介紹

YAML是 YAML Ain’t Markup Language(中文意思:YAML不是一種標記語言)的縮寫,YAML 是一種簡潔的非標記語言,文件名后綴為yml,java中經常用它描述配置文件application.yml。YAML以數據為中心,比json/xml等更適合做配置文件。使用空白,縮進,分行組織數據,從而使得表示更加簡潔易讀。

 

2、yaml基本語法

2.1、yaml語法基本規則

YAML有以下基本規則:

  1. 大小寫敏感
  2. 使用縮進表示層級關系,只要是左邊對齊的一列數據都是同一個層級的
  3. 數據值前邊必須有空格,作為分隔符,否則無法識別該字段值為一個屬性(比如 port: 8082,8082前邊必須最少有一個空格,可以有多個)
  4. 禁止使用tab縮進,只能使用空格鍵
  5. 字符串可以用也可以不用引號引起來
  6. 縮進長度沒有限制,只要元素對齊就表示這些元素屬於一個層級。
  7. 使用 # 表示注釋

 

2.2、常量的寫法

語法結構 :key:空格 value (注意,空格不能去掉,否則無法正確識別)。

yaml 以空格的縮進來控制層級關系,只要是左對齊的一列數據,都是同一個層級的

server:
  port: 8081

字面量直接寫在后面就可以 , 字符串默認不用加上雙引號或者單引號。

 

注意:

  • "xxx"  雙引號可以識別轉義字符, 特殊字符會作為本身想表示的意思。比如 :name: "kuang \n shen",使用該屬性值時,輸出會得到結果:kuang  換行   shen

  • 'xxx' 單引號會忽略轉義字符 , 特殊字符最終會原樣輸出。比如 :name: 'kuang \n shen',使用該屬性值時,輸出會得到結果:kuang  \n   shen

在同一個 yml 文件里,不能有多個相同對象,同一個對象里不能有多個相同的屬性

 

2.3、對象(Map)的寫法

在下一行來寫對象的屬性和值的關系,注意縮進。

#對象、Map格式
k: 
    v1:
    v2:

#示例:
student:
    name: qinjiang
    age: 3

也可以使用行內寫法,如下:

student: {name: qinjiang,age: 3}

 

2.4、數組的寫法

用 - 值 來表示數組中的一個元素。

pets:
 - cat
 - dog
 - pig

#行內寫法如下:
pets: [cat,dog,pig]

 

2.5、參數的引用

在 yml 中可以直接引用文件內其他地方出現的屬性值,如下:

name: lisi
person:
    name: ${name} # 引用上邊定義的name值

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM