如何在Springboot的main方法中检索可配置属性?

时间:2019-02-12 13:00:07

标签: java spring-boot

以下是我的application.properties:-

enter image description here

下面是AppConfig类:- enter image description here 下面是ItemApplication类:-

enter image description here

在application.properties中,我故意在'spring.datasource.driver-class-name'中设置了错误的值来测试我的代码。 当我运行我的代码时,在日志上观察到以下情况

2019-02-12 18:04:51,413 [main] INFO进程日志-:appConfig:com.vsi.jobs.itemsubstitution.config.AppConfig@6e75aa0d 2019-02-12 18:04:51,420 [main] INFO进程日志-:appConfig.swapScreenUrl:null

如何收回swapscreenUrl值?

1 个答案:

答案 0 :(得分:0)

给定的代码无法正确检索AppConfig bean。它只是使用new运算符获取AppConfig的新实例。如果您需要使用spring boot应用程序main方法中的任何 spring托管bean ,则可以遵循以下方法。

ApplicationContext app = SpringApplication.run(ItemApplication.class, args);
AppConfig appConfig=app.getBean(AppConfig.class);
System.out.println(appConfig.getSwapScreenUrl());

作为一个非常基本的实践,每当需要使用spring bean时,让框架为您提供bean,方法是直接使用getBean()的{​​{1}}方法或使用{{1} }注释或使用任何其他依赖项注入方法。