监听Nacos指定配置项动态变更方式

 更新时间:2026年06月14日 09:38:05   作者:Xzw_jsu  
本段落主要介绍了通过监听ActionConfigEvent类来实现Nacos指定配置项的动态变更,以Constant.COLUMN_VERSION_KEY为例,演示如何实现业务开关功能,强调了此方法在实际项目中的应用与应用

监听Nacos指定配置项动态变更

只需要监听 ActionConfigEvent 类便可以实现:

假如想做一个动态“业务开关“的功能

只需要定义好对应的变量Constant.COLUMN_VERSION_KEY在事件中监听对应的配置项,便可以进行对应的业务数据初始化等相关处理。

import com.purgeteam.dynamic.config.starter.event.ActionConfigEvent;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationListener;
import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.Map;
@Slf4j
@Component
public class NacosListener implements ApplicationListener<ActionConfigEvent> {
    @Autowired
    private PlatformService platformService;
    @Override
    public void onApplicationEvent(ActionConfigEvent environment) {
        Map<String, HashMap> map = environment.getPropertyMap();
        for (Map.Entry<String, HashMap> entry : map.entrySet()) {
            String key = entry.getKey();
            Map changeMap = entry.getValue();
            String before = String.valueOf(changeMap.get("before"));
            String after = String.valueOf(changeMap.get("after"));
            log.info("配置[key:{}]被改变,改变前before:{},改变后after:{}", key, before, after);
            if (Constant.COLUMN_VERSION_KEY.equals(key)) {
                // 需要监听处理的逻辑
                platformService.updateColumns();
            }
        }
    }
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Java实战之酒店人事管理系统的实现

    Java实战之酒店人事管理系统的实现

    这篇文章主要介绍了如何用Java实现酒店人事管理系统,文中采用的技术有:JSP、Spring、SpringMVC、MyBatis等,感兴趣的小伙伴可以学习一下
    2022-03-03
  • Java实现RSA算法的方法详解

    Java实现RSA算法的方法详解

    这篇文章主要介绍了Java实现RSA算法的方法,结合实例形式分析了RSA算法的原理、实现与使用方法,需要的朋友可以参考下
    2018-03-03
  • springmvc使用JSR-303进行数据校验实例

    springmvc使用JSR-303进行数据校验实例

    本篇文章主要介绍了详解springmvc使用JSR-303进行数据校验,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-02-02
  • @Scheduled在springboot中的使用方式

    @Scheduled在springboot中的使用方式

    这篇文章主要介绍了@Scheduled在springboot中的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • JAVA使用Ldap操作AD域的方法示例

    JAVA使用Ldap操作AD域的方法示例

    这篇文章主要介绍了JAVA使用Ldap操作AD域的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • 解决idea默认带的equals和hashcode引起的bug

    解决idea默认带的equals和hashcode引起的bug

    这篇文章主要介绍了解决idea默认带的equals和hashcode引起的bug,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • Java 解析线程的几种状态详解

    Java 解析线程的几种状态详解

    这篇文章主要为大家详细介绍了Java 解析线程的几种状态,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • 十分钟速懂java知识点 System类

    十分钟速懂java知识点 System类

    这篇文章主要介绍了java知识点System类,根据一次面试总结的,可以十分钟速懂System类,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • springboot websocket集群(stomp协议)连接时候传递参数

    springboot websocket集群(stomp协议)连接时候传递参数

    这篇文章主要介绍了springboot websocket集群(stomp协议)连接时候传递参数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • oracle+mybatis-plus+springboot实现分页查询的实例

    oracle+mybatis-plus+springboot实现分页查询的实例

    本文主要介绍了oracle+mybatis-plus+springboot实现分页查询,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08

最新评论