如何实现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());
            }
        
        }
相关推荐
木棉软糖9 分钟前
JDBC 读 ResultSet 读到一半,报 stream closed
java·mysql·spring
狂奔的sherry15 分钟前
JRuby 多线程反引号偶发 127:GC 提前释放了 posix_spawn 的 argv
java·linux·ruby·gc·jruby
咖啡八杯17 分钟前
异常体系设计:三类策略(i18n code、message、受检异常)
java·架构·代码规范
ESDWAN25 分钟前
跨境网络延迟、抖动和丢包有什么区别?如何判断业务影响
开发语言·网络·计算机网络·php
Code_Solitude27 分钟前
C语言分支结构练习题(华师版)
c语言·开发语言
Spatial3Ddddd32 分钟前
2026空间三维重建服务商横向对比
java·服务器·人工智能
从小白到软工1 小时前
4-1 指针
c语言·开发语言·数据结构·经验分享·ai编程
Pniubi1 小时前
agent处理封号怎么解决误封问题
开发语言·python
Rain的Java大神之路1 小时前
Java 三层架构,90% 的人只答对一半:Controller 不是瘦,Service 不是透传,Dao 不是只写 SQL
java·后端·面试
Thomas.Sir1 小时前
第29课:微服务异步调用、线程池优化 & 事件驱动开发
java·redis·微服务