在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);
}
}