目录
配置文件的作用:解决硬编码(代码写死)问题
SpringBoot在创建项目时就帮我们创建好了配置文件
常见的SpringBoot的配置文件有三种格式:
1.properties
2.yaml
3.yml(yml的简写)
SpringBoot只支持三个文件:application.properties、application.yaml、application.yml
aplication.yaml、application.yml实际上是一个文件,目前比较常用的是application.yml
如果项目中同时存在properties和yml配置文件,两个文件都生效。如果两个文件中都包含同一个配置项,properties的优先级更高,以properties为主。
key = value的形式,以 = 分割,key的格式建议小写,单词之间使用 . 分割
举例:
#配置项目端口号
server.port=9091
#配置数据库连接信息
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/testdb?characterEncoding=utf8&useSSL=false
spring.datasource.username=root
spring.datasource.password=root
自定义配置
properties配置以key-value的形式配置,因此会有许多冗余的信息,要解决这个问题,就可以使用yml配置文件的格式化。
格式:把properties的点换成:加换行;key后面用冒号赋值
value前面的冒号后必须要加上空格
server:
port: 9092
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/testdb?characterEncoding=utf8&useSSL=false
username: root
password: root
# spring.datasource.url=jdbc:mysql://127.0.0.1:3306/testdb?characterEncoding=utf8&useSSL=false
# spring.datasource.username=root
# spring.datasource.password=root
使用@value读取,${映射关系}
null: 使用 ~
空字符串:key后面直接空着即可,但更推荐使用单/双引号括起来?
value值加单双引号
单引号:会转义,\n不再表示换行
双引号:不转义,\n表示本意换行
优点:1.可读性高,写法简单
? ? ? ? ? ?2.支持多种数据类型,可以简单的表示对象、数组、list、map等数据形态
? ? ? ? ? ?3.支持多种编程语言
缺点:不适合写复杂的配置文件