1.6 YAML文件
YAML文件的后缀为yml,yml文件和xml、json、properties文件一样,都是一种数据存储的文件,只是数据存储的格式不同。
1.6.1 YAML文件简介
YAML文件用纯文本的形式进行记录,直接用记事本进行书写,不需要编译。
Spring Boot默认扫描资源配置文件,除.properties文件外还读取YAML文件,即yml文件。Spring Boot资源配置文件的约定命名分别为application.properties、application.yml、bootstrap.properties、bootstrap.yml。
在代码中可以通过@Value、@ConfigurationProperties、@ApplicationContext三种方式获取配置文件信息的形式,同时获得YAML文件内相关的配置信息且不需要更改任何代码。
1.6.2 YAML文件的书写格式
(1)YAML文件的Key Value结构应写为Key:Value,冒号后若有值则要注意Value前必须有1个空格,若不写则无法正常响应文件。
(2)如果某个Key下有多个Key,每个Key前就需要增加2个空格,如org.zfx.boot.another.number,该Key的number前应该有8个空格。注意,不能使用TAB键缩进,这也是初学者的常见错误之一。
(3)每个Key结束后必须有一个“:”作为结尾;如果没有,程序启动不会报错,但是用@Value进行读取没有“:”的值时,就会报空指针错误或YAML格式错误;如果有“:”,就取空值。
(4)YAML文件中没有“=”,一切以“:”为核心。
(5)YAML文件的注释以“#”开头,但是如果写在“:”后,必须在“:”后加一个空格,否则报错,YAML无法识别后会报YAML格式错误。
(6)不能通过@PropertySource注解加载。