读取nacos配置中的list

1.场景
有一些不变的,但常用的数据,可以直接写在nacos里,便于读取与管理。
我这里是从nacos里读取的一个list集合,集合的内容是个对象

sopconditions:  
  sopcondition:
    - sopConditionEnum: 1
      approvalType: 0  
      conditionName: "营销方类型是否是电厂"
      bussinessBodys: [0, 1, 5, 6]
      inkeys:
        - alias: "id"
          name: "id"
          type: "String"
          necessary: true
          defaultValue: ""
        - alias: "sopConditionEnum"
          name: "sopConditionEnum"
          type: "String"
          necessary: true
          defaultValue: "1"          
      outkeys:
        - alias: "result"
          name: "result"
          type: "String"
          address: "String"
          defaultValue: "是;否"
          values: null
          autoValues: null
    - sopConditionEnum: 2
      approvalType: 0
      conditionName: "合同类别"
      bussinessBodys: [0, 1, 5, 6]
      inkeys:
        - alias: "id"
          name: "id"
          type: "String"
          necessary: true
          defaultValue: ""
        - alias: "sopConditionEnum"
          name: "sopConditionEnum"
          type: "String"
          necessary: true
          defaultValue: "2"
      outkeys:
        - alias: "contractType"
          name: "合同类别"
          type: "String"
          address: "String"
          defaultValue: "电力贸易;综合能源;电力贸易和综合能源"
          values: null
          autoValues: null

2.具体操作
2.1 在yaml文件配置中加入nacos所读的配置yaml的位置
2.2 定义对应的实体类
2.3使用@ConfigurationProperties注解自动读取
@ConfigurationProperties作用:将配置文件中配置的每一个属性值,映射到这个组件中。告诉springboot将本类中的所有属性和配置文件中的相关配置进行绑定
@Configuration:代表它是一个配置文件,让spring可以扫描到它
定义的List sopcondition 属性就是用来接收nacos里面读到的list集合了


```java
@Configuration
@ConfigurationProperties(prefix = "sopconditions")
@Data
public class SopConditionProperties {

//    @Value("${sopcondition:[]}")
    private List> sopcondition;



    public List> getList(){
        return sopcondition;
    }

    public void setList(List> sopConditions){
        this.sopcondition = sopConditions;
    }

}


你可能感兴趣的:(spring基础,java,spring,spring,boot)