1. 程式人生 > 其它 >SpringBoot配置詳解

SpringBoot配置詳解

簡述

  springboot是基於約定的,所以很多配置都有預設的值,但如果想用自己的配置替換掉預設的配置的話,就可以使用application.properties或者application.yml(application.yml)進行配置

yml和properties的區別

  properties檔案和我們平常寫的是一樣的,就是鍵值對

server.port=8080

  而yml的寫法略有不同,需要注意的是子屬性有縮排,且值前面有空格

server:
    port: 8080

優先順序

  properties檔案的優先順序>yml>yaml

YAML簡介

  YAML是YAML Ain't Markup Language的縮寫。YAML是一種直觀的能夠被電腦識別的資料序列化格式,並且容易被人類閱讀,容易和指令碼語言互動,可以被支援YAML庫的不同的程式語言匯入。YAML是以資料為核心的,比傳統的xml方式更加簡潔。

YAML基本語法

  大小寫敏感

  資料值前邊必須有空格,作為分隔符

  使用縮排表示曾經關係

  縮排時不允許使用tab,只允許使用空格

  縮排的空格數不重要,只要相同層級的元素左對齊即可

  #表示註釋,從#到行尾,都會被解析器忽略

YML資料格式

讀取配置檔案內容

  一共有三種方式來讀取我們的配置檔案內容:

@Value註解  

  這也是spring框架支援的解析方式,我們可以在需要注入的變數的上方加value註解,註解值支援spel表示式,寫上"${properties的鍵名}"即可獲取到對應的值

Environment方式

  我們可以在類中定義一個Environment型別的變數,通過Autowired註解在spring容器初始化好這個變數。

  我們就可以用它的getProperty("properties的鍵名")方法獲取到value值

ConfigurationProperties註解

  我們在實體類上方使用ConfigurationProperties註解,意思就是這個類和配置檔案相對映

  註解的值就是配置檔案裡的父級鍵名,我們寫person就意味這要在配置檔案裡找person字首的值,並把值注入person物件

  當spring將person類加入核心容器時就會自動將配置檔案裡的值進行注入

一點一點積累,一點一點蛻變!