1. application.properties
application.properties: 使用键值对的形式存储配置,键和值之间通过等号=
分隔,如 `spring.datasource.url=jdbc:mysql://localhost:3306/MySql。这种格式较为简单直接,但不支持复杂的数据结构表达。
2. application.yml
application.yml: 采用YAML(YAML Ain't Markup Language)格式,这是一种更为人性化的数据序列化格式,支持层级结构,通过冒号(:
)进行键值对定义,并利用缩进表示层级关系。YAML的结构化特性使得配置文件更加易读且便于管理复杂的配置结构。我们把上面的配置文件改成yml的格式
可以看到IDEA能够识别并用不同颜色的图标来进行区分。
3. 多配置文件
SpringBoot还支持多环境配置。目的是让我们使用不用的配置文件,把我们的环境隔离开。首先我们可以创建三个不同环境的配置文件,比如:生产、开发、测试等环境的配置文件。
3.1 application-dev.yml
spring:
application:
name: top
datasource:
url: jdbc:mysql://dev-ip:3306/MySql
server:
port: 808
3.2 application-test.yml
spring:
application:
name: top
datasource:
url: jdbc:mysql://test-ip:3306/MySql
server:
port: 8088
3.3 application-prod.yml
spring:
application:
name: top
datasource:
url: jdbc:mysql://prod-ip:3306/MySql
server:
port: 8088
3.4 激活方式
可以在application.yml中进行配置激活方式:
spring:
profiles:
active: dev
也可以使用命令行进行激活:
java -jar top.jar --spring.profiles.active=dev
这样一来我们就可以把配置文件进行分割开来,而不用每次上线、调试的时候使用同一份配置文件,来回修改配置了。
4. 注释:
两者都支持使用#
符号进行单行注释。
5. 编码支持:
YAML支持更多的数据类型,如数组、哈希表等,可以直接表达集合和嵌套结构,而.properties文件仅支持字符串键值对。