
引用文档:
Spring Boot允许您外部化配置,以便可以在不同环境中使用相同的应用程序代码。您可以使用属性文件,YAML文件, 环境变量
和命令行参数来外部化配置。可以
使用@Value注释将属性值直接注入到您的bean中,可以通过Spring的Environment抽象访问,也可以通过绑定到结构化对象@ConfigurationProperties。
因此,由于Spring Boot允许您使用环境变量进行配置,并且由于Spring Boot还允许您使用
@Value从配置中读取属性,因此答案是肯定的。
这很容易测试,下面将给出相同的结果:
@Componentpublic class TestRunner implements CommandLineRunner { @Value("${bar}") private String bar; private final Logger logger = LoggerFactory.getLogger(getClass()); @Override public void run(String... strings) throws Exception { logger.info("Foo from @Value: {}", bar); logger.info("Foo from System.getenv(): {}", System.getenv("bar")); // Same output as line above }}欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)