在接觸springboot的時(shí)候遇到了一種特殊的配置文件 .yml,本文對(duì)yml作簡(jiǎn)單介紹,快速入手yml。
一、YML是什么
YAML (YAML Ain't a Markup Language)YAML不是一種標(biāo)記語(yǔ)言,通常以.yml為后綴的文件,是一種直觀的能夠被電腦識(shí)別的數(shù)據(jù)序列化格式,并且容易被人類(lèi)閱讀,容易和腳本語(yǔ)言交互的,可以被支持YAML庫(kù)的不同的編程語(yǔ)言程序?qū)?,一種專(zhuān)門(mén)用來(lái)寫(xiě)配置文件的語(yǔ)言??捎糜谌纾?Java,C/C++, Ruby, Python, Perl, C#, PHP等。
二、YML的優(yōu)點(diǎn)
YAML易于人們閱讀。
YAML數(shù)據(jù)在編程語(yǔ)言之間是可移植的。
YAML匹配敏捷語(yǔ)言的本機(jī)數(shù)據(jù)結(jié)構(gòu)。
YAML具有一致的模型來(lái)支持通用工具。
YAML支持單程處理。
YAML具有表現(xiàn)力和可擴(kuò)展性。
YAML易于實(shí)現(xiàn)和使用。
三、YML語(yǔ)法
1.約定
k: v 表示鍵值對(duì)關(guān)系,冒號(hào)后面必須有一個(gè)空格
使用空格的縮進(jìn)表示層級(jí)關(guān)系,空格數(shù)目不重要,只要是左對(duì)齊的一列數(shù)據(jù),都是同一個(gè)層級(jí)的
大小寫(xiě)敏感
縮進(jìn)時(shí)不允許使用Tab鍵,只允許使用空格。
松散表示,java中對(duì)于駝峰命名法,可用原名或使用-代替駝峰,如java中的lastName屬性,在yml中使用lastName或 last-name都可正確映射。
2.鍵值關(guān)系
(以java語(yǔ)言為例,其它語(yǔ)言類(lèi)似)對(duì)于鍵與值主要是看能否表示以下內(nèi)容。普通的值(數(shù)字、字符串、布爾)、日期、對(duì)象、數(shù)組、集合等。
實(shí)例如下:
springboot 數(shù)據(jù)源及thymeleaf的配置
spring: thymeleaf: cache: false prefix: classpath:/templates/views/ suffix: .html encoding: UTF-8 mode: HTML servlet: content-type: text/html #數(shù)據(jù)庫(kù)相關(guān)配置 datasource: driver-class-name : com.mysql.jdbc.Driver url : jdbc:mysql://localhost:3306/stu_info username : root password : root max-idle : 10 max-wait : 1000 min-idle : 5 initial-size : 5