- 读取外部配置文件中的k/v保存到运行的环境变量中;加载完外部的配置文件以后使用${}取出配置文件的值
参数 |
描述 |
value |
指示要加载的属性文件的资源位置 |
encoding |
给定资源的特定字符编码 |
factory |
指定自定义 PropertySourceFactory(如果有)。 |
ignoreResourceNotFound |
指示是否应忽略找不到属性资源的失败。 |
name |
指明该属性源的名称。 |
- config.properties
name=张三
age=25
示例
- User.java
//引入外部配置文件
@PropertySource("classpath:/config.properties")
@Component
public class User {
@Value("${"name"}")
private String name;
private int age;
}
示例
- MainConfigOfPropertyValue.java
//引入外部配置文件
@PropertySource("classpath:/config.properties")
@Configuration
public class MainConfigOfPropertyValue {
@Bean
private Person person(){
return new Person();
}
}
- test.java
@Test
public void test(){ printBeans(applicationContext);
Person person = (Person) applicationContext.getBean("person"); System.out.println(person); //同时可以从系统环境中获取配置文件的数据 ConfigurableEnvironment environment = applicationContext.getEnvironment(); String property = environment.getProperty("person.name"); System.out.println("property : "+property); applicationContext.close(); }
运行结果: property : 张三 |