- application.yaml
person:
name: shang
address:
addr: 安徽
books:
- 《红楼梦》
- 《西游记》
hobbys:
- 打篮球
- 打乒乓球
card: {k1: v1,k2: v2}
games:
- LOL
- 王者荣耀
- CF
girlfriend: true
birth: 2019/12/12
- 只需使用一个注解
@ConfigurationProperties(prefix = "person")
即可实现绑定。
@Component
@ConfigurationProperties(prefix = "person")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Person {
private String name;
private Address address;
private String[] books;
private List<String> hobbys;
private Map<String,Object> card;
private Set<String> games;
private Boolean girlfriend; //null
private Date birth;
}
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Address {
private String addr;
}
- 测试
@SpringBootTest
class Springboot01HelloworldApplicationTests {
@Autowired
private Person person;
@Test
void testPerson(){
System.out.println(person);
}
}
@ConfigurationProperties
,在SpringBoot自动配置中的底层就是通过这个来改变默认值的。例如:
server:
port: 8081