一、yml中数组对象的写法

### 方式一
china: 
  persons: 
    - name: 张三
      sex: F
      age: 24
    - name: 李四
      sex:M
      age: 25

### 方式二
china: 
  persons: 
    - {name: 张三,sex: F,age: 24}
    - {name: 李四,sex: M,age: 25}

## 注意空格和对齐方式

二、Java获取数组对象

1、获取该数组对象

/**
* yml对应的类
**/
@Configuration
@ConfigurationProperties(prefix = "china")
public class ChinaPersons {

    // 这里的名字要和yml中的对应字段名称一致
    private static List<Person> persons = new ArrayList();

    // 注意此处的static关键字
    public static List<Person> getPersons() {
        return persons;
    }

    public void setPersons(List<Person> persons) {
        this.persons = persons;
    }

    /**
     * 基础人员信息
     * 注意:该类要使用static关键字修饰,否则会报错。
     */
    @Data
    @ToString
    public static class Person {
        // 姓名
        private String name;
        // 性别
        private String sex;
        // 年龄
        private Integer age;
    }

}

2、使用 

/**
* 写一个接口测试数据是否注入成功
* 注意:不能写main方法测试,可以写@Test注解测试。
**/
@GetMapping("/queryChinaPersons")
@ApiOperation("获取人员信息")
public List<ChinaPersons.Person> queryChinaPersons(){
	// 获取该数组对象
    List<ChinaPersons.Person> list = ChinaPersons.getPersons();
    
    // 遍历打印
    for(ChinaPersons.Person man : list){
        System.out.println("CHAIN PERSON IS : "+man.toString());
    }
	
	return list;
}

// 浏览器调用该接口即可看到返回数据
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐