Nacos设置中心自动加载JSON设置 [复制链接]
发表于 2025-5-24 11:56:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
在项目设置中,有个别场景需要通过nacos设置中心来维护一些项目中非spring上下文中的设置,比如:第三方特别设置、一些非标准化的设置,想通过nacos来实现机动管理与及时更新。这种需求场景下,我们可以通过Nacos中提供的两个注解来非常简单的实现我们需求。

  • @NacosConfig:需要声明在,由spring管理的bean中,比如:bean的属性上,或者bean的类上。当应用启动时,会将声明了该注解的属性或类,进行赋值。
  • @NacosConfigListener:需要声明在,由spring管理的bean中。作用于Bean的方法上,当Nacos中的设置发生变化时,会以方法入参情势将最新设置内容传入,且支持基本数据范例、对象、泛型类。
版本要求:


  • 2023.x 系列需升级版本至2023.0.3.2
  • 2022.x 系列需升级版本至2022.0.0.2
  • 2021.x 系列需升级版本至2021.0.6.2
  • 2.2.x 系列需升级至2.2.11
@NacosConfig注解用法先容


  • 此注解可作用于bean属性上和类上,前提是需要声明由spring进行管理。支持多种数据范例:基本范例、List、Map等
List集合,接收JSON格式设置
  1. @Component
  2. public class NacosConfigData {
  3.     @NacosConfig(dataId = "list_demo.json",group = "default_group")
  4.     private List<MyDemo> myDemoList;
  5. }
复制代码
Map泛型,接收JSON格式设置
  1. @Component
  2. public class NacosConfigData {
  3.     @NacosConfig(dataId = "map_demo.json",group = "default_group")
  4.     private Map<Long,MyDemo> myDemoMap;
  5. }
复制代码
@NacosConfigListener 注解用法先容


  • 此注解重要作用于方法上,在方法上进行声明,当设置发生变化时,会触发声明了此注解的方法,将最新的设置内容以入参方式传入。
自界说bean 接收最新设置
  1. @Component
  2. public class NacosConfigData {
  3.     @NacosConfig(dataId = "list_demo.json",group = "default_group")
  4.     private List<MyDemo> myDemoList;
  5.     @NacosConfigListener(dataId = "list_demo.json",groupId = "default_group")
  6.     private void myDemoListChanged(List<MyDemo> myDemoList){
  7.         this.myDemoList = myDemoList;
  8.     }
  9.     @NacosConfig(dataId = "map_demo.json",group = "default_group")
  10.     private Map<Long,MyDemo> myDemoMap;
  11.     @NacosConfigListener(dataId = "map_demo.json",groupId = "default_group")
  12.     private void myDemoMapChanged(List<MyDemo> myDemoList){
  13.         this.myDemoList = myDemoList;
  14.     }
  15. }
复制代码
更为详实先容,可以查察,参考泉源:https://sca.aliyun.com/blog/sca-gvr7dx_awbbpb_xr9f0v45pxz9ubnu/?spm=5176.29160081.0.0.74805c721Hvyc4&source=blog/

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表