作用:
将配置文件中配置的每一个属性的值映射到这个组件中;
告诉spring boot将本类中的所有属性和配置文件中的相关配置进行绑定。
参数:prefix=“person” 将配置文件中的person和下面所有的属性一一对应
只有组件在容器中(@Component)才能使用@ConfigurationProperties功能
yaml:
person:
name: tom
age: 5
happy: true
birthday: 2015/10/10
map: {k1: v1,k2: v2}
list:
- l1
- l2
- l3
dog:
name: 旺财
age: 3
@Component
@ConfigurationProperties(prefix = "person")
@Data
public class Person {
private String name;
private Integer age;
private Boolean happy;
private Date birthday;
private Map<String,Object> map;
private List<Object> list;
private Dog dog;
}
@Component
@Data
public class Dog {
private String name;
private int age;
}
@SpringBootTest
class Springboot01ApplicationTests {
@Autowired
Person person;
@Test
void contextLoads() {
System.out.println(person);
}
}
*****************************结果:****************************
Person(name=tom,
age=5,
happy=true,
birthday=Sat Oct 10 00:00:00 CST 2015,
map={k1=v1, k2=v2},
list=[l1, l2, l3],
dog=Dog(name=旺财, age=3))
网友评论