yml基礎語法以及獲取文件中的數據

基本語法

#配置普通數據
#key: value
name: zhangsan

#對象數據配置
person:
  name: zhangsan
  age: 18
  addr: beijing

#行內對象配置(瞭解)
student: {name: zhangsan,age: 18,addr: bejing}

#配置數組/集合(普通字符串)
city:
  - beijing
  - shanghai
  - chongqing
  - tianjin

#行內數組/集合配置(瞭解)
country: [zhongguo,meiguo,eluosi]

#配置數組/集合(對象)
students:
  - name: zhangsan
    age: 18
    addr: beijing
  - name: lisi
    age: 17
    addr: beijing

#行內
#students:[{name: zhangsan,age: 18,addr: beijing},{name: lisi,age: 17,addr: bejing}]

#Map
map:
  key1: value1
  key2: value2

獲取數據

方式一:@Vaule註解
@RestController
public class QuickController {
    @Value("${name}")
    private String name;
    @Value("${person.addr}")
    private String addr;

    @RequestMapping("/quick")
    public String quick() {
        return name + "   " + addr;
    }
}
顯示結果

在這裏插入圖片描述

方式二:@ConfigurationProperties註解

@RestController
@Component
@ConfigurationProperties(prefix = "person")
public class QuickController {

    //獲取person的全部數據
    private String name;
    private String age;
    private String addr;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAge() {
        return age;
    }

    public void setAge(String age) {
        this.age = age;
    }

    public String getAddr() {
        return addr;
    }

    public void setAddr(String addr) {
        this.addr = addr;
    }

    @RequestMapping("/quick")
    public String quick() {
        return name + "   " + age + "   " + addr;
    }
}
顯示結果

在這裏插入圖片描述

關於使用@ConfigurationProperties註解報錯的解決方案

pom.xml中添加以下座標

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

在使用@ConfigurationProperties註解的類上加上@Component註解

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章