三.配置文件
3.1 三种配置文件的格式
1.aplication.properties 配置文件
aplication.properties 是 springboot 项目的默认配置文件,配置文件中属性的格式如下面几个例子中所展示的。
修改端口号
关闭运行日志图标:
设置日志相关:
2.aplication.yml 配置文件
3.aplication.yaml配置文件
.yaml 文件和 .yml 文件是同一种配置文件,只不过二者同时存在时,有一个优先级问题。
3.2 三种配置文件的优先级
1.不同类型的优先级
加载顺序为:application.properties < application.yml < application.yaml
优先级为:application.properties > application.yml > application.yaml
2.不同位置处的优先级
3.3 yml 格式
3.3.1 yml 格式简介
YAML,一种数据序列化格式。这种格式的配置文件在近些年已经占有主导地位,这种配置文件和前期使用的.properties配置文件是有一些优势的。比如容易阅读、重数据轻格式、容易与脚本语言交互。后缀名可以是.yml或.yaml
3.3.2 yml 语法规则
yml 语法规则如下:
-
大小写敏感
-
属性层级关系使用多行描述,每行结尾使用冒号结束
-
使用缩进表示层级关系,同层级左侧对齐,只允许使用空格(不允许使用Tab键)
-
空格的个数并不重要,只要保证同层级的左侧对齐即可。
-
属性值前面添加空格(属性名与属性值之间使用冒号+空格作为分隔)
-
# 表示注释
3.4 从 yaml 配置文件中读取数据
3.4.1 使用 @Value 读取
使用 @Value 读取时,必须将读取配置文件的类注册为一个 bean。
3.4.2 Environment 对象
SpringBoot 还可以使用 @Autowired 注解注入 Environment 对象的方式读取数据。这种方式 SpringBoot会将配置文件中所有的数据封装到 Environment 对象中,如果需要使用哪个数据只需要通过调用Environment对象的 getProperty(String name) 方法获取
3.4.3 自定义对象
-
将实体类 bean 的创建交给 Spring 管理。在类上添加 @Component 注解。
-
使用 @ConfigurationProperties 注解表示加载配置文件,在该注解中也可以使用 prefix 属性指定只加载指定前缀的数据。
-
在 BookController 中进行注入。