Spring Cloud 配置变化监听
Spring Cloud 配置变化监听 背景 开发中遇到个需求,期望可以在配置变更的时候,监听配置的变化,做一些逻辑处理,原生ApplicationEvent已经有发出对应的配置更新事件,但是包含的是所有的变更,开发人员一般只关心自己需要的配置变更 原生事件发出EnvironmentChangeEvent(如spring cloud config)或RefreshEvent(nacos 最终也会发EnvironmentChangeEvent事件) 对此我们可以基于EnvironmentChangeEvent,最一层包装,封装我们自己需要的事件 使用 先看下效果,直接基于EventListener捕获ConfigRefreshEvent,condition使用el表达式配置需要监听的key,针对集合或map 可以使用正则匹配 @EventListener(condition = "#event.key eq 'sys.loglevel.root'") void handleConditionalListener(ConfigRefreshEvent event) { // 业务逻辑 balabala System.out.println("handleConditionalListener event key :" + event.getKey() + ", before :" +