在nacos配置的数据,时时读取到Map中

放在nacos的配置

oa.oaDetailFlag.isu8=111

oa.oaDetailFlag.isu9[0]=111

oa.oaDetailFlag.isu9[1]=112

在项目开启了自动更新远程配置数据的情况下。

开始的时候写成这样:

@RefreshScope

@ConfigurationProperties(predix = "oa.oa.detail-flag")

@Data

@Configuration

publiv class OaDetailFlagConfiguration{

  Map<String,List<String> oaDetailFlag = new HashMap();

 

   public List<String> getList(String stepId){

    return oaDetailFlag(stepId);

   }

}

这样也能读取成功,但是不能试试更新。

架构组反馈说:不能把数据格式转化成map的事情交给配置中心来做。建议:有多少个key,就行建一个变量,自己放到map中

 

改后:

@RefreshScope

@ConfigurationProperties(predix = "oa.oa.detail-flag")

@Data

@Configuration

publiv class OaDetailFlagConfiguration{

  Map<String,List<String> oaDetailFlag = new HashMap();

  List<String> isu8 = new ArrrayList();

  List<String> isu9 = new ArrrayList();

  

  @PostConstruct

  public void initData(){

    oaDetailFlag.put("isu8",isu8);

    oaDetailFlag.put("isu9",isu9);

  }

 

  public List<String> getList(String stepId){

    return oaDetailFlag(stepId);

  }

}

 

posted @ 2022-07-27 14:03  爱摇头的封三  阅读(1397)  评论(0编辑  收藏  举报