spring cloud nacos使用yaml类型获取数组配置的几种方式

682 阅读1分钟
 <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            <version>2.2.3.RELEASE</version>
        </dependency>

方式一

配置项

app:
  demo:
    list1: xiaohong, xiaoming
    list2: >
      xiaohong,
      xiaoming

list1和list2看起来是2种风格,其实都是同一种写法,以逗号分隔

java代码

@Data
@Component
public class AppConfig1 {

    @Value("${app.demo.list1}")
    private List<String> list1;

    @Value("${app.demo.list1}")
    private String[] array1;

    @Value("${app.demo.list2}")
    private List<String> list2;
}

执行结果

可以正常获取到

方式二

配置项

app:
  demo:
    list3:
      - xiaohong
      - xiaoming

java代码

使用方式一的java代码就不行了,换一种方式

@Data
@Component
@ConfigurationProperties(prefix = "app.demo")
public class AppConfig2 {

    private List<String> list3;
}

执行结果