如何实现nacos的配置的热更新

  1. 我们在使用nacos进行修改配置后,需要微服务无需重启即可让配置生效,也就是使配置进行热更新
  2. 我们可以采用下面的两种方式进行配置的热更新操作
    1. 方式一:在@Value所注入的变量的类上添加注解@RefreshScope
      1.

      java 复制代码
      @RestController
      @RequestMapping("/orders")
      @Slf4j
      @RequiredArgsConstructor
      @RefreshScope
      public class OrderController {
      
          
          @Value("${my.version}")
          private String version;
      
      }
    2. 方式二:使用读取配置文件的注解@ConfigurationProperties,同时需要将当前类交于spring管理,加上注解@Component
      1.

      java 复制代码
      package com.app.order.config;
      
      import lombok.Data;
      import org.springframework.boot.context.properties.ConfigurationProperties;
      import org.springframework.stereotype.Component;
      
      /**
       * 用户自定义的配置信息
       *
       * @author Administrator
       */
      @Data
      @ConfigurationProperties(prefix = "my")
      @Component
      public class MyProperties {
          /**
           * 名称
           */
          private String name;
      
      }
      1. 在需要使用的当前配置信息的类注入当前的配置
        1.

        java 复制代码
        @RestController
        @RequestMapping("/orders")
        @Slf4j
        @RequiredArgsConstructor
        public class OrderController {
        
            /**
             * 结合@RequiredArgsConstructor进行构造器注入
             */
            private final MyProperties myProperties;
        
            /**
             * 获取名称
             *
             * @return 返回名称
             */
            @GetMapping("/name")
            public ResultBean<String> myName() {
                return ResultBean.success(myProperties.getName());
            }
        
        }
相关推荐
阿俊-全栈开发8 小时前
LikeShop 单商户SaaS商城分销模块二开:佣金计算与结算逻辑实现
java·开发语言·微服务·likeshop·likeshop开源商城·likeshop多商户
wuminyu11 小时前
C++协程实现接收端的零拷贝Buffer管理原理剖析
java·linux·c语言·jvm·c++
m0_3807438711 小时前
C++中的freopen的用法实例详解
开发语言·c++
Escalating_xu12 小时前
【Python】基础语法(1):常量、变量、类型、输入输出与运算符
开发语言·python
jimy112 小时前
polymorph.cpp里面的“析构函数、智能指针”问题
开发语言·c++
m0_3807438712 小时前
PHP 8.3 缓存清除不生效怎么排查
开发语言·php
朝朝辞暮i12 小时前
C++ 第 6 课:switch —— 多状态选择
开发语言·c++·算法
小凡geo13 小时前
本地商家 GEO:用脚本一键生成 FAQPage 结构化数据,让 AI 切片更稳
开发语言·人工智能·python·microsoft·搜索引擎·ai
朝朝辞暮i13 小时前
C++ 第 4 课:if / else —— 让程序自己做决定
开发语言·c++
波力海苔夹心脆67513 小时前
C# 值类型与引用类型详解:存储位置、赋值机制、参数传递、相等比较、装箱拆箱与常见陷阱
开发语言·jvm·经验分享·笔记·c#·.net