最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

.yml是什么文件(編寫規(guī)則)

 更新時間:2024年01月04日 10:50:29   作者:凈-本空  
YAML (YAML Aint Markup Language) 是一種標記語言,一種專門用來寫配置文件的語言, 可用于如: Java,C/C++, Ruby, Python, Perl, C#, PHP等,本文對.yml文件詳細講解,包括編寫規(guī)則和yml優(yōu)點,感興趣的朋友跟隨小編一起看看吧

一、YML是什么

  • YAML (YAML Aint Markup Language) 是一種標記語言,
  • 通常以.yml為后綴的文件
  • 是一種直觀的能夠被電腦識別的數(shù)據(jù)序列化格式
  • 容易被人類閱讀 容易和腳本語言交互的
  • 可以被支持YAML庫的不同的編程語言程序?qū)?/li>
  • 一種專門用來寫配置文件的語言。 可用于如: Java,C/C++, Ruby, Python, Perl, C#, PHP等
  • yaml語言者說是一種規(guī)范

二、 編寫規(guī)則

1.基本語法

  • k: v 表示鍵值對關(guān)系,冒號后面必須有一個空格
  • 使用空格的縮進表示層級關(guān)系,空格數(shù)目不重要,只要是左對齊的一列數(shù)據(jù),都是同一個層級的
  • 縮進時不允許使用Tab鍵,只允許使用空格。
  • 大小寫敏感
  • “”: 雙引號;不會轉(zhuǎn)義字符串里面的特殊字符,name: “zhangsan \n lisi”:輸出;zhangsan 換行 lisi
  • ‘’:單引號;會轉(zhuǎn)義特殊字符,特殊字符最終只是一個普通的字符串數(shù)據(jù)

松散表示,java中對于駝峰命名法,可用原名或使用-代替駝峰,如java中的 lastName屬性,在yml中使用lastName或 last-name都可正確映射

name1: zhangsan
name2: 'zhangsan \n lisi'
name3: "zhangsan \n lisi"
age: 18
flag: true
# 日期
date: 2019/01/01
# 對象屬性關(guān)系
people:
  name: zhangsan
  age: 20
# 行內(nèi)寫法
people: {name:zhangsan,age: 20} 
# 數(shù)組寫法
pets:
   - dog
   - pig
   - cat
# 數(shù)組行內(nèi)寫法
pets: [dog,pig,cat]

2. 對比Json差別

  • 大小寫敏感 (json 里也是大小寫敏感的)
  • 使用縮進表示層級關(guān)系 (json 中使用 {} 表示層級)
  • "#"表示注釋 (json 不允許寫注釋, yaml 寫的配置文件要比 json 方便很多)
  • 對象
# conf.yml
animal: pets
hash: { name: Steve, foo: bar }

轉(zhuǎn)json

{
    { "animal": "pets" },
    { "hash": { "name": "Steve", "foo": "bar" } }
}

數(shù)組 / 字符串 / null

# conf.yml
Animal:
 - Cat
 - Dog
 - Goldfish
# 正常情況下字符串不用寫引號
str: 這是一行字符串
# 字符串內(nèi)有空格或者特殊字符時需要加引號
str: '內(nèi)容: 字符串'
parent: ~ # null

轉(zhuǎn)json

{ "Animal": [ "Cat", "Dog", "Goldfish"],
  "str": "內(nèi)容: 字符串",
  "parent": null
 }

3. 對比Java事例代碼

public class Person {
  private String lastName;
  private Integer age;
  private Boolean boss;
  private Date birth;
  private Map<String,Object> maps;
  private List<Dog> lists;
  private Dog dog;
  private String[] arr;
}
public class Dog {
  private String name;
  private Integer age;
}
對應(yīng)的yml
person:
  boss: false
  maps:
    k1: v1
    k2: 14
  lists:
    - name: d1
      age: 2
    - name: d2
      age: 3
    - {name: d3,age: 4}
  birth: 2017/12/15
  dog:
    name: p_dog
    age: 15
  age: 13
  last-name: 張三
  arr: [s1,s2,s3]

4. 文檔塊

對于測試環(huán)境,預(yù)生產(chǎn)環(huán)境,生產(chǎn)環(huán)境可以使用不同的配置,如果只想寫到一個文件中,yml與是支持的,每個塊用----隔開

server:
  port: 8081
spring:
  profiles:
    active: prod #激活對應(yīng)的文檔塊
---
server:
  port: 8083
spring:
  profiles: dev #指定屬于哪個環(huán)境
---
server:
  port: 8084
spring:
  profiles: prod  #指定屬于哪個環(huán)境

三、YML的優(yōu)點

  • 易于閱讀 數(shù)據(jù)在編程語言之間是可移植性強
  • 匹配敏捷語言的本機數(shù)據(jù)結(jié)構(gòu)
  • 具有一致的模型來支持通用工具
  • 支持單程處理。
  • 具有表現(xiàn)力和可擴展性
  • 易于實現(xiàn)和使用

到此這篇關(guān)于.yml是什么文件的文章就介紹到這了,更多相關(guān).yml是什么文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 頁面制作統(tǒng)一的頭尾的方法(asp+js)

    頁面制作統(tǒng)一的頭尾的方法(asp+js)

    有時候我們需要統(tǒng)一頁面的頭尾,如果不是獨立,每次要修改文件,就要所有的模板頁面都要修改增加麻煩,所以,獨立頭尾調(diào)用,就只需要修改兩個頁面就可以了。
    2009-04-04
  • git clone如何指定歷史版本

    git clone如何指定歷史版本

    這篇文章主要介紹了git clone如何指定歷史版本問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • git忽略CRLF警告詳解

    git忽略CRLF警告詳解

    Git的CRLF警告提示行尾符差異(Windows用CRLF,Unix用LF),通常不影響代碼功能,但跨平臺協(xié)作或腳本文件可能引發(fā)問題,推薦配置core.autocrlf或.gitattributes統(tǒng)一處理,個人項目可忽略
    2025-09-09
  • webp 格式圖片顯示異常分析及解決方案

    webp 格式圖片顯示異常分析及解決方案

    WebP,谷歌(google)開發(fā)的一種旨在加快圖片加載速度的圖片格式。提供了有損壓縮與無損壓縮(可逆壓縮)的圖片文件格式,能節(jié)省大量的服務(wù)器帶寬資源和數(shù)據(jù)空間,這篇文章主要介紹了webp 格式圖片顯示異常分析及解決方案,需要的朋友可以參考下
    2023-04-04
  • git clone如何解決Permission Denied(publickey)問題

    git clone如何解決Permission Denied(publickey)問題

    文章介紹了如何解決Git clone時遇到的PermissionDenied(publickey)問題,包括檢查SSH key是否存在、生成新的SSH key、將SSH key添加到ssh-agent以及將SSH key添加到GitHub賬號,最后通過git clone下載代碼
    2024-11-11
  • URL 長度有限制嗎?

    URL 長度有限制嗎?

    眾所周知, 傳遞小量參數(shù)(在沒有其他原因,例如隱藏參數(shù)值的情況下)推薦使用GET方法,傳遞大量參數(shù)推薦使用POST方法。原因是什么呢?
    2009-06-06
  • git?clone報錯SSL?connect?error解決

    git?clone報錯SSL?connect?error解決

    這篇文章主要為大家介紹了git?clone報錯SSL?connect?error解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-11-11
  • 將Sublime?Text?設(shè)置成中文版的完整教程

    將Sublime?Text?設(shè)置成中文版的完整教程

    這篇文章主要介紹了將Sublime?Text?設(shè)置成中文版的完整教程,需要自己添加之后才會有這一項,對Sublime?Text中文版設(shè)置方法感興趣的朋友一起看看吧
    2022-01-01
  • vscode中setting.json配置文件配置詳解

    vscode中setting.json配置文件配置詳解

    這篇文章主要給大家介紹了關(guān)于vscode中setting.json配置文件配置的相關(guān)資料,VSCode中的setting.json文件用于存儲用戶自定義的配置設(shè)置,文中給出了詳細的代碼示例,需要的朋友可以參考下
    2023-09-09
  • 游戲開發(fā)進階Unity網(wǎng)格(Mesh\動態(tài)合批\骨骼動畫\蒙皮)

    游戲開發(fā)進階Unity網(wǎng)格(Mesh\動態(tài)合批\骨骼動畫\蒙皮)

    本篇文章是進階篇文章主要講解游戲開發(fā)進階,主要包含的技術(shù)有Mesh,動態(tài)合批,骨骼動畫,蒙皮下面一起進入Unity網(wǎng)格探險之旅吧
    2021-09-09

最新評論

昭平县| 宜宾市| 乃东县| 贵溪市| 永丰县| 桐梓县| 遵义县| 辽阳县| 定安县| 青铜峡市| 三门县| 和平县| 奉化市| 阿克| 宽城| 武冈市| 阜城县| 昆明市| 固镇县| 日喀则市| 琼结县| 岐山县| 三原县| 札达县| 乌兰浩特市| 垫江县| 罗田县| 定西市| 永安市| 嘉荫县| 双流县| 庆元县| 周口市| 垣曲县| 海门市| 庐江县| 花莲市| 西城区| 临江市| 林甸县| 金坛市|