读取yml中的配置
1、yml配置的简单读取
这个和对properitices的读取是相同
2、读取yml 配置中不同数据类型及 null
2、读取yml配置文件的补充
先来看一个栗子🌰
yml配置对象
我们可以在 yml 中配置对象,如下配置:
那么怎么读取我们yml中的配置文件呢?
可能你会说:还用
@Value("${mykey.key}")不行吗?
答案是不行,我们要用的专门的类做这一件事
yml配置集合
首先我们在yml配置文件里把集合配置上
那么接下来我们看看是怎么读取集合的
集合的读取和对象⼀样,也是使⽤ @ConfigurationProperties 来读取的,创建一个类并在该类中设置一个集合属性,具体实现如下:
四、Properties VS yml 总结和补充
1、properties 是以 key=value 的形式配置的键值类型的配置⽂件.
⽽ yml 使⽤的是类似 json 格式的树形配置⽅式进⾏配置的.
yml 层级之间使⽤换⾏缩进的⽅式配置,key 和 value 之间使⽤“: ”(英⽂)冒号加空格的⽅式设置,并且空格不可省略。
2、properties 为早期并且默认的配置⽂件格式,但其配置存在⼀定的冗余数据,使⽤ yml 可以很好的解决数据冗余的问题。
3、yml 通⽤性更好,⽀持更多语⾔,如 Java、Go、Python 等,如果是云服务器开发,可以使⽤⼀份配置⽂件作为 Java 和 Go 的共同配置⽂件。
4、yml 虽然可以和 properties 共存,但⼀个项⽬中建议使⽤统⼀的配置类型⽂件。
当一个项目的某个配置,出现在两种格式的配置文件中时,那么配置项会以properties 为主(忽略 yml 中的配置)。
关于properites的乱码问题
这是因为 application.properties 是属于早期的配置文件,而早期的 配置文件是不支持中文的。
而 yml 是天生就支持中文的(utf8)。
要想 application.properties 支持中文,需要进行配置。