详解application.properties和application.yml文件的区别

时间:2022-09-15 07:51:39

在springboot框架里进行项目开始时,我们在resource文件夹里可以存放配置文件,而格式可以有两种,properties和yml,前者是扁平的k/v格式,而后者是yml的树型结构,我们建议使用后者,因为它的可读性更强,如果现有是properties,也可以转换成yml格式,我们把properies里按.去拆分即可。

一般上来说,当我们创建一个springboot项目时,ide会默认帮我们创建一个application.properties配置文件。有些朋友习惯把.properties文件改成.yml文件。那么这两种文件类型有什么区别呢?

区别

1.内容格式比较:

.properties文件,通过.来连接,通过=来赋值,结构上,没有分层的感觉,但比较直接。

.yml文件,通过:来分层,结构上,有比较明显的层次感,最后key赋值的:后需要留一个空格

2.执行顺序

如果工程中同时存在application.properties文件和 application.yml文件,yml文件会先加载,而后加载的properties文件会覆盖yml文件。所以建议工程中,只使用其中一种类型的文件即可。

案例

application.properties:

?
1
2
3
4
5
6
7
server.port=8081
 
spring.datasource.type=org.apache.tomcat.jdbc.pool.datasource
spring.datasource.url=jdbc:mysql://aliyuncs.com:3306/database?useunicode=true&zerodatetimebehavior=converttonull&autoreconnect=true
spring.datasource.username=root
spring.datasource.password=******
spring.datasource.driver-class-name=com.mysql.jdbc.driver

application.yml:

?
1
2
3
4
5
6
7
8
9
10
11
server:
 port: 8082
 
spring:
  datasource:
    name: test
    url: jdbc:mysql://127.0.0.1:3306/database
    username: root
    password: ******
    type: com.alibaba.druid.pool.druiddatasource
    driver-class-name: com.mysql.jdbc.driver

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://huangweicai.github.io/2019/01/06/application.properties和application.yml区别/