YAML是JSON的一個超集,可以非常方便地將外部配置以層次結構形式存儲起來。當項目的類路徑中有SnakeYAML庫(spring-boot-starter中已經被包含)時,SpringApplication類將自動支持YAML作為properties的替代。
如果將項目中的application.properties文件修改為YAML文件(尾綴為.yml或yaml)的形式,則其配置信息如文件3-8所示。
文件3-8 application.yml
server:
port: 8081
#DB Configuration
spring:
datasource:
driverClassName: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3307/microservice
username: root
password: 123456
#logging
logging:
level:
com.xc.springboot: debug
從上述配置文件中可以看出,yml文件是一個樹狀結構的配置,它與properties文件相比,有很大的不同,在編寫時需要注意以下幾點。
(1)在properties文件中是以“.”進行分割的,在yml中是用“:”進行分割的。
(2)yml的數據格式和json的格式很像,都是K-V格式,並且通過“:”進行賦值。
(3)每個k的冒號后面一定都要加一個空格,例如driver-class-name后面的“:”之后,需要有一個空格,否則文件會報錯。