YAML檔案簡介
YAML檔案簡介
我們可能在spring配置檔案裡見到過.yml格式的東東,配置檔案不都是.propertie或者.xml檔案嗎?.yml是什麼鬼,今天我帶你們來一探究竟。
YAML(Yet Another Markup Language)(發音 /ˈjæməl/ )
一種基於Unicode容易閱讀,容易和指令碼語言互動的,用來表達資料序列的程式語言。
適應場景
指令碼語言:由於實現簡單,解析成本很低,YAML 特別適合在指令碼語言中使用
序列化: YAML是由宿主語言資料型別直轉,的比較適合做序列化。
配置檔案:寫 YAML 要比寫 XML 快得多(無需關注標籤或引號),並且比 INI 文件功能更強。由於相容性問題,不同語言間的資料流轉建議不要用 YAML。
語言優點
YAML易於人們閱讀。
YAML資料在程式語言之間是可移植的。
YAML匹配敏捷語言的本機資料結構。
YAML具有一致的模型來支援通用工具。
YAML支援單程處理。
YAML具有表現力和可擴充套件性。
YAML易於實現和使用。
YAML 語法
使用空格 Space 縮排表示分層,不同層次之間的縮排可以使用不同的空格數目,但是同層元素一定左對齊,即前面空格數目相同(不能使用 Tab,各個系統 Tab對應的 Space 數目可能不同,導致層次混亂)
‘#’表示註釋,只能單行註釋,從#開始處到行尾
破折號後面跟一個空格(a dash and space)表示列表
用冒號和空格表示鍵值對 key: value
簡單資料(scalars,標量資料)可以不使用引號括起來,包括字串資料。用單引號或者雙引號括起來的被當作字串資料,在單引號或雙引號中使用C風格的轉義字元
Sequence of Scalars 簡單資料列表
- Mark McGwire
- Sammy Sosa
- Ken Griffey
Mapping Scalars to Scalars 簡單資料鍵值對以及註釋
hr: 65 # Home runs
avg: 0.278 # Batting average
rbi: 147 # Runs Batted In
Mapping Scalars to Sequences 簡單資料列表鍵值對
american:
-
Boston Red Sox
-
Detroit Tigers
-
New York Yankees
national: -
New York Mets
-
Chicago Cubs
-
Atlanta Braves
Sequence of Mappings 鍵值對列表 -
name: Mark McGwire
hr: 65
avg: 0.278 -
name: Sammy Sosa
hr: 63
avg: 0.288
YAML 還支援流型別,用中括號括起來表示列表,用逗號分隔元素;用大括號括起來表示鍵值對,用逗號分隔元素。
Sequence of Sequences 列表的列表
- [name , hr, avg ]
- [Mark McGwire, 65, 0.278]
- [Sammy Sosa , 63, 0.288]
Mapping of Mappings 鍵值對的鍵值對
Mark McGwire: {hr: 65, avg: 0.278}
Sammy Sosa: {
hr: 63,
avg: 0.288
}
yaml 官方網站:http://www.yaml.org
yaml 官方文件:http://www.yaml.org/spec/1.2/spec.html
作者:beginya
來源:CSDN
原文:https://blog.csdn.net/beginya/article/details/76768968
版權宣告:本文為博主原創文章,轉載請附上博文連結!
相關文章
- YAML檔案YAML
- yaml語音簡介YAML
- kubernetes實戰篇之helm示例yaml檔案檔案詳細介紹YAML
- 【SpringBoot】YAML 配置檔案Spring BootYAML
- springboot專案中yaml檔案Spring BootYAML
- java解析yaml配置檔案JavaYAML
- 入門Kubernetes - YAML檔案YAML
- c++ 解析yaml檔案C++YAML
- iOS 檔案操作簡介iOS
- Kubernetes簡介以及如何使用YAML配置?YAML
- deployment.yaml 檔案解讀YAML
- python pyyaml操作yaml配置檔案PythonYAML
- YAML檔案語法及示例YAML
- Mybatis對映檔案簡介MyBatis
- 檔案管理簡單介紹
- 使用yaml檔案讀取資料YAML
- Go 語言處理 yaml 檔案GoYAML
- 使用Kubesec檢查YAML檔案安全YAML
- 檔案拆分命令 split 使用簡介
- GNU make-Makefile檔案簡介
- Spring YAML與屬性檔案配置檔案對比 | BaeldungSpringYAML
- 差異檔案(diff)和補丁檔案(patch)簡介
- 【檔案系統】嵌入式檔案系統Fatfs簡介
- python讀取yaml配置檔案的方法PythonYAML
- Go 語言解析 yaml 檔案的方法GoYAML
- Go讀取yaml檔案到struct類GoYAMLStruct
- SpringBoot2配置檔案application.yamlSpring BootAPPYAML
- 推薦一個yaml檔案轉json檔案的線上工具YAMLJSON
- Visual C++ 6.0專案檔案型別簡介C++型別
- Yaml檔案語法及讀寫小結YAML
- yaml檔案中在哪加名稱空間?YAML
- .yaml引數檔案的編寫和使用YAML
- ASP.NET Web Forms – XML 檔案簡介ASP.NETWebORMXML
- 根檔案系統簡介與BusyBox構建根檔案系統
- spring boot 專案報錯找不到compose.yaml檔案Spring BootYAML
- 簡單介紹Linux環境變數檔案Linux變數
- linux 程式引數檔案 /proc/pid/cmdline 簡介Linux
- dart系列之:元世界pubspec.yaml檔案詳解DartYAML