开发者学堂课程【全面讲解Spring Cloud Alibaba技术栈(知识精讲+项目实战)第五阶段:Nacos Config深入】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/687/detail/11918
Nacos Config深入
配置动态刷新
在入门案例中,实现了配置的远程存放,但是此时如果修改了配置,程序是无法读取到的,因此,需要开启配置的动态刷新功能。
在 nacos 中的 service-product-dev.yaml 配置项中添加下面配置:
config:
appName: product
回到商品微服务,在 Controller 中新建一个 NacosConfigController,并在其中输入操作
(一)方式一:硬编码方式
@ RestContro1ler
public class NacosconfigController {
@Autowired
private configur able Application context application context ;
@GetMapping("/nacos-config-test1")
public string nacosconfingTest1() {
return application context.getEnvironment() . get Property ("config.appName"); } }
然后重新启动并访问添加的配置,访问成功。
更改 service-product-dev.yaml 配置内容中的 product为product1,点击发布,点击详情,内容已同步更新,且网站内容也同步更新,说明可以实现动态刷新。
(二)方式二
:注解方式
(推荐)
@
RestController
@
Refreshscope//只需要在需要动态读取配置的类上添加此注解就可以
动态刷新,否则不能
public class Nacos config controller {
@ value("${config.appName}")
private string appName;
/ /2注解方式
@GetMapping(" / nacos-config-test2"")
public string nacosconfingTest2( {
return appName ; } }
然后重新启动并访问添加的配置,访问成功。
更改 service-product-dev.yaml 配置内容中的 product 为 product1,点击发布,点击详情,内容已同步更新,且网站内容没有同步更新,说明可以实现动态刷新。