自定义配置文件引用(@PropertySource)

Exisi 2022-09-28 15:26:21
Categories: Tags:

 

 

person.name=张三

person.age=27

person.manager=true

person.birthday=2020/03/27

yaml文件中的属性不能通过 @PropertySource 注解来访问。所以,如果你的项目中使用了一些自定义属性文件,建议不要用yaml

 

 

 

单属性注入(@PropertySource & @Value

@PropertySource引用配置文件后,直接使用@value注解到参数上

示例

@Component

@PropertySource(value = {"classpath:person.properties"}) //读取自定义的配置文件

public class Person{

    @Value("${person.name}")

    private String name;

 

    @Value("${person.name}")

    private int age;

 

    @Value("${person.name}")

    private boolean isManager;

 

    @Value("${person.name}")

    private Date birthday;

}

 

 

 

多属性注入(@PropertySource & @ConfigurationProperties

@PropertySource引用配置文件后,可以使用@ConfigurationProperties()注解的prefix属性指定参数前缀,spring boot会根据匹配的前缀参数批量注入到类成员变量中

示例

@Component

@ConfigurationProperties(prefix = "person")

@PropertySource(value = {"classpath:person.properties"}) //读取自定义的配置文件

public class Person{

 

    private String name;

 

    private int age;

 

    private boolean isManager;

 

    private Date birthday;

}