- 微服务分布式架构基础与实战:基于Spring Boot + Spring Cloud
- 张方兴
- 434字
- 2025-02-24 08:24:44
1.7 【实例】使用YAML配置文件
1.7.1 实例背景
本实例将使用application.yml资源配置文件替代application.properties资源配置文件,并对照properties文件编写存储相同数据的YAML文件。
1.7.2 原properties文件
在application.properties资源配置文件中输入其他格式的数据,目的是了解在Spring Boot的配置文件中,无论YAML文件还是properties文件,都能存储除Spring Boot预定义参数外的自定义参数,通过如@Value、@ConfigurationProperties、@EnableConfigurationProperties等相关注解从资源配置文件中提取自定义参数。
在下述代码中org.zfx.boot.date能在Java代码中获取并转换成List。org.zfx.boot.date参数的配置也更能体现YAML文件和properties文件的书写区别。
原application.properties文件代码如下。

1.7.3 转换格式后的YAML文件
将原appliaction.properties文件转换成application.yml文件后,application.yml文件代码如下。在下述代码中,zfx前有2个空格,boot前有4个空格,another前有6个空格,以此类推。

假设org是一个对象,则org对象含有zfx对象,zfx对象含有boot对象,boot对象含有another对象、book对象、List<String>date(或List<int>date、List<Date>date)对象。
1.7.4 实例易错点
1.YAML文件不能用TAB键缩进
YAML文件一定要用2*n空格来书写,若用TAB键则会报以下错误。

2.YAML文件空格过多或过少
YAML文件每个参数前一定要用2*n个空格来书写,若多一个空格或少一个空格则会报以下错误。
