使用Nacos時 ,可以使用@Value注解來獲取配置中的配置信息,但是不能實現動態。
百度找了一大圈,都說@NacosValue和@NacosPropertySource注解可以實現,但是嘗試后發現還是獲取不到。
最終解決方案:
@Autowired
private ConfigurableApplicationContext configurableApplicationContext;
配置文件上下文,使用該類來實現動態獲取配置中心的配置文件信息
configurableApplicationContext.getEnvironment().getProperty("中心配置的屬性值"); 即可獲得 配置文件中 的 配置的值
例如:
開啟一個定時任務來測試下
@Autowired
private ConfigurableApplicationContext configurableApplicationContext;
@Scheduled(fixedRate = 1000)
public void pullApproval() throws BusinessException {
String startTime = configurableApplicationContext.getEnvironment().getProperty("ding.startTime");
System.out.println(startTime);
}
輸出: