在spring框架里面对一些系统配置或者常量配置必须要在名字为application文件里配置 ,文件类型可以为后缀为.properties或者.yml形式.
其实无论是properties文件还是yml文件,他们的本质是相同的,即都是键值对,只不过写法不一样而已
对于yml文件中数据的获取有两种方法如下:
第一: 直接利用spring框架中的 @Value("${dataAccess.baseUrl}") 进行单个数据获取(这个是properties文件获取数据的唯一方法,所以尽可能使用yml文件)
第二: 将配置文件当做一个对象进行属性获取,利用的原理就是spring启动时的bean的自动注入功能
首先,新建一个类,将其用@Component标记为spring的bean 并且将类上加注解@ConfigurationProperties(value="yutianxu")表明这个类是从配置文件的哪个地方获取来的(value值为配置文件的第一层即可) 这样启动后就会自动将配置文件内的值注入到对应的类属性中,要注意的是当使用这个类的时候要在其上加@Autowired
@Component
@ConfigurationProperties(value="yutianxu")
public class Person {
@Value("${yutianxu.name}")
private String name;
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
@Override
public String toString() {
return "TestYaml [name=" + name + ", sex=" + sex + "]";
}
}
@Autowired
private Person person=new Person();