溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Spring Boot中.yml和.properties的配置文件到底有哪些區(qū)別

發(fā)布時(shí)間:2021-11-17 11:03:13 來(lái)源:億速云 閱讀:444 作者:小新 欄目:大數(shù)據(jù)

這篇文章將為大家詳細(xì)講解有關(guān)Spring Boot中.yml和.properties的配置文件到底有哪些區(qū)別,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

.properties 配置文件大家應(yīng)該都很熟悉,鍵值對(duì)嘛,.yml 配置文件棧長(zhǎng)也是從 Spring Boot 開始了解到的。

那么,這兩種格式的配置文件到底有哪些區(qū)別呢?哪個(gè)更好?能不能替換代替?今天,棧長(zhǎng)就來(lái)解開這些謎團(tuán),看 YML 能不能掀翻Properties。。。

.properties格式:

spring.application.name=register-center
spring.security.user.name=javastack
spring.security.user.password=javastack

.yml格式:

spring:
  application:
    name: register-center
  security:
    user:
      name: javastack
      password: javastack

如上所示,.properties 是鍵值對(duì)形式,.yml 是樹狀結(jié)構(gòu)的,配置更方便,可以直接寫中文,閱讀也可友好。

這還不算什么,yml最強(qiáng)大的是能節(jié)省很多配置,如下所示:

---
spring:
  profiles: rc1

server:
  port: 8761

eureka.instance.hostname: eureka1

---
spring:
  profiles: rc2

server:
  port: 8762

eureka.instance.hostname: eureka2

---
spring:
  profiles: rc3

server:
  port: 8763

eureka.instance.hostname: eureka3

以上配置,yml一個(gè)配置文件就能搞定,而用 properties 則需要三個(gè)文件。

但在 .yml 配置文件中需要注意以下幾點(diǎn):

  • 鍵冒號(hào)后面需要帶一個(gè)空格

  • 縮進(jìn)只能用空格,不能用tab

  • @PropertySource注解不能加載yml文件

不考慮 @PropertySource 注解,棧長(zhǎng)現(xiàn)在用 yml 完全可以代替 properties 配置文件,能用 yml 就不會(huì)用 properties 了,可以看這篇文章:Spring Boot讀取配置的幾種方式。

當(dāng)然這只是在 Spring Boot 中能完全替代,某些框架還是需要用 properties 的,如:某些日志配置文件、第三方的配置文件等。

關(guān)于“Spring Boot中.yml和.properties的配置文件到底有哪些區(qū)別”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI