这是我参与8月更文挑战的第1天,活动详情查看:8月更文挑战
1.目的:代码中获取application.properties/yml中数据
1 获取单个数据
//1
@Value("${spring.map.url}")
private String url;
//3调用
public void aVoid(){
System.out.println(“路径为” + url);
}
复制代码
#2配置文件
spring:
map:
url: 127.0.0.1:9000
复制代码
2 批量匹配数据
//1类匹配
@Component
@ConfigurationProperties(prefix = "person")
public class Person {
private String lastName;
private Integer age;
private Boolean boss;
....
省略getset,tostring等
复制代码
#2配置文件
person:
lastName: 战三
age: 12
boss: true
复制代码
//3调用
@Autowired
private Person person;
@RequestMapping("/test1")
public void aVoid(){
System.out.println(person.toString());
}
复制代码
3 扩展
//匹配指定的配置文件
@PropertySource(value = “classpath:person.yml”)
2 目的:springboot中加新组件
@Configuration//配置类
public class MyAppConfig {
//将方法的返回值加到容器中,容器中bean默认id是方法名helloService
@Bean
public HelloService helloService(){
System.out.println("添加到容器中");
return new HelloService();
}
}
复制代码
3 yml中占位符
1 可以写随机数
lastName: 战三1${random.uuid}
age: 121${random.int}
复制代码
2 占位符,获取前面配置的值,如果没有可以设置默认值
abc: ${person.age:12}
复制代码
4 多环境配置
4.1 yml中配置
spring:
profiles:
active: test 当前是测试环境
复制代码
4.2 idea中启动配置

5 resours中多个配置文件
springboot启动会默认扫描使用application.yml作为默认配置文件,多个配置时会按照优先级进行加载,高优先级配置会覆盖低优先级配置的内容。

从高—–到低
也可以通过配置spring.config.location来改变默认配置。
6 按照指定的条件,给容器添加组件。
可以在yml中配置debug=true来查看springboot启动过程中debug模式

© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END






















![[桜井宁宁]COS和泉纱雾超可爱写真福利集-一一网](https://www.proyy.com/skycj/data/images/2020-12-13/4d3cf227a85d7e79f5d6b4efb6bde3e8.jpg)

![[桜井宁宁] 爆乳奶牛少女cos写真-一一网](https://www.proyy.com/skycj/data/images/2020-12-13/d40483e126fcf567894e89c65eaca655.jpg)