@PropertySource
@PropertySource 加载指定的属性文件配置到 Spring 的 Environment 中,可以配合 @Value 和 @ConfigurationProperties 使用,使用@PropertySources可以加载多个配置文件
@ConfigurationProperties
@ConfigurationProperties指定加载文件中的哪一类属性
用法:
@Configuration+ @PropertySource+Environment
@Configuration+ @PropertySource+@Value
@Configuration+ @PropertySource+@ConfigurationProperties
其中@Configuration 可以是 @Component
一、@Configuration+ @PropertySource+Environment
@Configuration
@PropertySource(“classpath:hellword.properties”)
public class HelloWorldConfig {
@Autowired
private Environment env;
}
二、@Configuration+ @PropertySource+@Value
@Configuration
@PropertySource("classpath:hellword.properties")
public class HelloWorldConfig {
@Value(${my.name})
private String name;
}
三、@Configuration+ @PropertySource+@ConfigurationProperties
@PropertySource+@ConfigurationProperties在一起解决了@ConfigurationProperties只能加载主文件内属性问题。
@Configuration
@PropertySource("classpath:hellword.properties")
@ConfigurationProperties(prefix = "my")
public class HelloWorldConfig {
private String name;
}