pom.xml文件中导入依赖
<!--导入配置文件处理器,配置文件进行绑定就会有提示-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
编写一个JAVA Bean
@ConfigurationProperties(prefix = "parson")
/**
* 将配置文件中配置的每一个属性的值,映射到这个组件中
* @ConfigurationProperties:告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;
* prefix = "person":配置文件中哪个下面的所有属性进行一一映射
*@Component
* 只有这个组件是容器中的组件,才能容器提供的@ConfigurationProperties功能;
*/
@Component
public class Parson {
private String name;
private int age;
private String sex;
private Map<String,Integer> map;
private List<Integer> list;
@Override
public String toString() {
return "Parson{" +
"name='" + name + '\'' +
", age=" + age +
", sex='" + sex + '\'' +
", map=" + map +
", list=" + list +
'}';
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public Map<String, Integer> getMap() {
return map;
}
public void setMap(Map<String, Integer> map) {
this.map = map;
}
public List<Integer> getList() {
return list;
}
public void setList(List<Integer> list) {
this.list = list;
}
}
编写application.yml文件
parson:
name: zgf
age: 18
sex: 男
list: [1,2,3]
map: {1: 1,2: 2,3: 3}
yaml文件中的键必须和你java Bean中的属性名互相匹配才能注入成功
编写test类:
/**
* 告诉系统使用SpringBoot的驱动器运行而不是使用junit的驱动器
*/
@RunWith(SpringRunner.class)
/**
* @SpringBootTest告诉系统这是一个SpringBoot的单元测试
*/
@SpringBootTest
public class SpringBoot02ApplicationTests {
@Resource(name = "parson")
Parson parson;
@Test
public void contextLoads() {
System.out.println(parson);
}
}