application.yml 配置文件:
server:
port: 8081
person:
lastName: hello
age: 18
boss: false
birth: 2019/07/25
map: {k1: v1,k2: v2}
list: [zhangsan,lisi,wangwu]
dog:
name: 藏獒
age: 4
application.properties 配置文件:
server.port=8081
person.last-name=hello
person.age=23
person.birthday=2019/07/23
person.boss=true
person.list=zhangsan,lisi,wangwu
person.map.k1=v1
person.map.k2=v2
person.dog.name=dhdh
person.dog.age=5
properties配置文件在idea中默认utf-8可能会乱码
将配置文件中配置的每一个属性的值,映射到这个组件中
@ConfigurationProperties:告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;
prefix = "person":配置文件中哪个下面的所有属性进行 一 一 映射
只有这个组件是容器中的组件,才能容器提供的@ConfigurationProperties功能;
@ConfigurationProperties 只能读取默认的配置文件
/**
* 将配置文件中配置的每一个属性的值,映射到这个组件中
* @ConfigurationProperties:告诉SpringBoot将本类中的所有属性和配置文件中相关的配置进行绑定;
* prefix = "person":配置文件中哪个下面的所有属性进行一一映射
*
* 只有这个组件是容器中的组件,才能容器提供的@ConfigurationProperties功能;
*
*/
@Component
@ConfigurationProperties(prefix = "person")
public class Person {
private String lastName;
private Integer age;
private Boolean boss;
private Date birth;
private Map<String,Object> maps;
private List<Object> lists;
private Dog dog;
导入配置文件处理器,以后编写配置就有提示了
<!‐‐导入配置文件处理器,配置文件进行绑定就会有提示‐‐>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring‐boot‐configuration‐processor</artifactId>
<optional>true</optional>
</dependency>