写法参考了 官方文档
Nacos Spring 快速开始
Nacos Spring Boot 快速开始
maven
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>nacos-config-spring-boot-starter</artifactId>
<version>0.2.8</version>
</dependency>
启动类上添加对应的注解
@EnableNacosConfig(globalProperties = @NacosProperties(username = "nacos", password = "nacos", serverAddr = "127.0.0.1:8848", namespace = "xxx-xx-xxx-xx-xxxx"))
@NacosPropertySource(dataId = "xxx-dynamic-configuration.yml",autoRefreshed = true,type = ConfigType.YAML)
controller验证
@RestController
@Slf4j
@RequestMapping("/nacos")
public class ScheduleController {
@NacosValue(value = "${xxx.switch}", autoRefreshed = true)
private boolean xxxSwitch;
@GetMapping(value = "/test")
public Object test() {
Map resultMap = new LinkedHashMap();
resultMap.put("data", xxxSwitch);
return resultMap;
}
}
以上写法都没问题
用nacos的接口查看修改配置
浏览器访问地址 127.0.0.1:8848/nacos/v1/cs/configs?dataId=xxx-dynamic-configuration.yml&group=DEFAULT_GROUP&tenant=xxx-xx-xxx-xx-xxxx
可以看到都是每次修改都是成功的
但是项目里的接口 nacos/test 始终不能动态修改值
无奈之下开了个新项目, 使用相同的配置, 找到了突破点
最终发现是application.yaml 文件里写了配置值
导致了动态刷新失效
xxxx:
switch: false
删除这段配置, 就正常了文章来源:https://www.toymoban.com/news/detail-501253.html
(等有时间可以找下原因)文章来源地址https://www.toymoban.com/news/detail-501253.html
到了这里,关于Nacos SpringBoot 动态配置 不生效的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!