springboot配置文件的优先级,以下源码可看出
<includes>
<include>**/application*.yml</include>
<include>**/application*.yaml</include>
<include>**/application*.properties</include>
</includes>
//properties文件优先级最高,其次yaml,最后yml形式;
yml文件的配置
name: lisi
person:
name: lisi
age: 18
addr: 北京
server:
port: 8081
city:
- beijing
- tianjin
- haerbin
student:
- name: tom
age: 18
addr: beijing
- name: jack
age: 12
addr: tianjin
map:
key: value1
key2: value2
获取配置文件的数据
通过@value注解
@Controller
public class Quick2Controller {
@Value("${name}")
private String name;
@Value("${person.addr}")
private String addr;
@RequestMapping("quick2")
@ResponseBody
public String quick2(){
System.out.println(addr);
return name;
}
}
通过@ConfigurationProperties注解,
@Controller
@ConfigurationProperties(prefix = "person")
public class Quick3Controller {
private String name;
private String addr;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddr() {
return addr;
}
public void setAddr(String addr) {
this.addr = addr;
}
@RequestMapping("quick3")
@ResponseBody
public String quick3(){
System.out.println(name);
System.out.println(addr);
return null;
}
}