获取配置值的两种方法
一、使用@Value获取配置值
单个属性的注入
@Data
@Component
public class Family {
@Value( "${family.family-name}") //单个属性的注入
private String familyName;
private Father father;
private Mother mother;
private Child child;
}
@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。
(把普通pojo实例化到spring容器中,相当于配置文件中的 <bean id="" class=""/>
)
lombok里的@Value 和 annoation的@Value
二、使用@ConfigurationProperties获取配置值
@Data
@Component
@ConfigurationProperties(prefix = "family") //只要实体类的字段和yml里成员变量保持一致,就能够完全自动装配
public class Family {
// @Value( "${family.family-name}") //单个属性的注入
private String familyName;
private Father father;
private Mother mother;
private Child child;
}
3.4.配置文件注入值数据校验
@Validated 和 @ConfigurationProperties(prefix = "family") 配合使用,
@Value 不能进行校验
3.5.加载旧项目配置文件的两种方式
一、使用@PropertySource加载自定义yml或properties文件
二、使用@ImportResource加载Spring的xml配置文件