SpringBoot-----YAML文件
文章目录
🔥一、配置文件介绍
SpringBoot项目中 , 大部分配置都有默认值 , 但如果想替换默认配置的话 , 就可以使用application.properties 或者 application.yml 进行配置
SpringBoot默认会从resources目录下载application.properties或 application.yml文件 。 其中,application.properties文件是键值对的文件。
除了properties文件外 , SpringBoot还支持YAML文件进行配置。YAML文件的扩展名为.yml和.yaml,它的基本要求如下:
- 大小写敏感
- 使用缩进代表层级关系
- 相同的部分只会出现一次
使用properties文件配置tomcat端口:
server.port = 8888
使用YAML文件配置tomcat端口:
server:
port :8888
🔥二、自定义配置简单数据
除了覆盖默认配置,我们还可以在YAML文件中配置其他信息以便我们在项目中使用。配置简单数据的方式如下:
语法:
- 数据名:指
实例代码:
- username : oyc
注意: value 之前有一个空格
🔥三、自定义配置对象数据
对象:
属性名1: 属性值
属性名2: 属性值
或者
对象: {属性名1: 属性值,属性名2: 属性值}
实例代码:
person:
username :oyc
password :123456
或者
person {username :oyc , password : 123456}
🔥四、自定义配置集合数据
集合:
-值1
-值2
或者
集合: [值1,值2]
实例代码:
city1:
- wuhan
- chongqin
- shanghai
city2: [beijing,tianjin,shanghai,chongqing]
或者集合中有对象
students:
- name : oyc1
age : 18
score : 100
- name : oyc2
age : 18
score : 100
在-后空一格
🔥五、@Value读取配置文件数据
@Value 可以将配置文件中的值映射到Bean的字段上(只能是简单数据类型)
🔥六、@ConfigurationProperties
通过@ConfigurationProperties(prefifix=“对象”)可以将配置文件中的配置自动与实体进行映射,这样可以将yml文件中配置的对象属性直接映射到Bean当中。
第一步 :在配置文件中配置user对象
#端口号
server:
port: 8888
user:
username: oyc
grades:
- subjectName: math
score : 100
- subjectName : chinese
score : 100
配置一个成绩表的类
package com.example.demo.wr.oyc.bean;
public class Grade {
private String subjectName;
private int score ;
public String getSubjectName() {
return subjectName;
}
public void setSubjectName(String subjectName) {
this.subjectName = subjectName;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
@Override
public String toString() {
final StringBuilder sb =