1.配置文件
很多项目 或者 框架的 配置信息放在 配置文件中:
例如:项目的启动端口、数据库的连接信息、第三方系统的调用密钥等信息
如在配置文件中修改端口号:

2.配置文件的格式
1.application.properties
文件名字不能改,改了就失效。

2.application.yml
如果同时配置两个格式的配置文件:application.properties+application.yml
当一个配置项两个文件都配置时:properties的优先级高于yml。
当两个文件的配置项无冲突,则两个配置文件同时生效。
实际使用时,只使用一个格式的配置文件。
3.application.yaml
yaml和yml的使用方式一样,yml是yaml的简写
3.配置文件的语法
1.application.properties
key=value键值对
单词通常小写
在application.properties中写的中文注释会乱码,不可逆,所以要修改编码方式
1.修改编码格式:

设置后重新打开idea,配置文件的中文注释不会乱码。
2.注释:#

单词之间以"."分割
3.如何获得配置项:@Value()
补充:shift+Fn+F6:改文件的名字



补充:@PostConstruct注释

执行流程:
(这个类交给Spring管理,Spring创建这个类的bean。)
Spring创建readPropertiesController 对象------》
开始注入所有的@Value值------》
这个Bean的所有注入都完成了------》
依次执行这个类上面所有带@PostConstruct的方法。
4.properties格式的缺点
配置文件中有很多冗余信息:

而yml格式就可以统一配置
2.application.yml
yml是yaml的缩写,全称Yet Another Markup Language(另一种标记语言)
1.语法

:与value中间有一个"空格",不可省略



2.yml配置项的标准格式:


yml文件也可以写成:

null:~
空字符串:''

3.读取yml格式的配置项@Vaule





4.字符串'',"",不加的区别


打印结果:

结论:字符串用双引号括起来,字符串其中的转义字符有效
3.yml配置对象

@ConfigurationProperties(prefix = "")

@ConfigurationProperties(prefix = "spring.datasource")注解的作用:
自动把配置文件的里前缀是"spring.datasource"的配置项,绑定赋值到这个类对应的成员变量上。
注意:成员变量名与配置项名必须一致
把这个对象交给Spring管理

读取值

4.配置集合
集合:




