在实践中,@Value注解常用于注入配置文件以及环境变量中的值,但除此之外,其还有许多其他的用法,本文将对其做一个总结。
1. 普通字符串
1 | |
2. 系统变量
1 | |
3. 表达式结果
1 | |
4. 文件资源
1 | |
5. URL资源
1 | |
6. 其他Bean的字段
1 | |
这个叫做“fip”的bean长这样“
1 | |
7. 环境变量
1 | |
8. application.yaml配置文件的变量
application.yaml/properties等配置文件是默认的,可以直接注入。
1
2@Value("${spring.application.name}") private String appName;
9. 其他配置文件
除了8中的默认配置文件,还可以配合
@PropertySource注解配置自定义的配置文件
首先建两个配置文件:
第一个:config.properties
1 | |
第二个:myConfig2.properties
1 | |
然后用 @PropertySource注解在类上进行配置:
1 | |
这里注意第二个配置文件的名称是用了第一个配置文件里的变量值${anotherConfig.file}.
然后使用这两个值:
1 | |
10. 统一测试
1 | |
访问该接口,返回:
1 | |
(END)