溫馨提示×

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

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

Java?springboot配置文件、多環(huán)境配置與運(yùn)行優(yōu)先級(jí)的方法是什么

發(fā)布時(shí)間:2023-04-04 11:12:29 來源:億速云 閱讀:117 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容主要講解“Java springboot配置文件、多環(huán)境配置與運(yùn)行優(yōu)先級(jí)的方法是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Java springboot配置文件、多環(huán)境配置與運(yùn)行優(yōu)先級(jí)的方法是什么”吧!

    前言

    提問:springboot項(xiàng)目,開發(fā)環(huán)境、測試環(huán)境和生產(chǎn)環(huán)境配置文件如何分開表示?

    答:多profile文件方式

    1、多環(huán)境配置(profile)

    1.1、properties文件配置

    application.properties:主配置文件

    主配置文件配置決定加載哪個(gè)環(huán)境的配置文件

      spring.profiles.active=dev

    根據(jù)spring.profiles.active值,選擇加載不同環(huán)境配置

    application-{profile}.properties

    開發(fā)、測試、生產(chǎn)環(huán)境配置文件:

    • application-dev.properties:開發(fā)環(huán)境配置文件

    • application-test.properties:測試環(huán)境配置文件

    • application-prod.properties:生產(chǎn)環(huán)境配置文件

     1.2、YML文件配置

    application.yml:主配置文件
    主配置文件配置決定加載哪個(gè)環(huán)境的配置文件

      spring:
          profiles:
              active:dev

    根據(jù)spring.profiles.active值,選擇加載不同環(huán)境配置

    application-{profile}.yml

    開發(fā)、測試、生產(chǎn)環(huán)境配置文件:

    • application-dev.yml:開發(fā)環(huán)境配置文件

    • application-test.yml:測試環(huán)境配置文件

    • application-prod.yml:生產(chǎn)環(huán)境配置文件

     1.3、修改主配置文件切換配置

    1.3.1、切換生產(chǎn)配置

    #默認(rèn)配置
    server:
      port: 8080
    #切換配置
    spring:
      profiles:
        active: prod

    1.3.2、切換開發(fā)配置

    #開發(fā)環(huán)境配置
    server:
      port: 8080
    #切換配置
    spring:
      profiles:
        active: dev

    1.3.3、切換測試配置

    #測試環(huán)境配置
    server:
      port: 8080
    #切換配置
    spring:
      profiles:
        active: test

    1.4、命令行激活配置文件

    1.4.1、命令行激活配置文件

    java -jar springboot-0.0.1-SNAPSHOT.jar--spring.profiles.active=dev

    1.4.2、虛擬機(jī)參數(shù)激活

    java -Dspring.profiles.active=dev -jar springboot-0.0.1-SNAPSHOT.jar

    2、默認(rèn)配置文件

    Spring Boot啟動(dòng)時(shí)會(huì)掃描以下5個(gè)位置的application.properties或apllication.yml文件,并將它們作為 Spring boot的默認(rèn)配置文件。

    • file:./config/"/

    • file:/config/

    • file:./

    • classpath:/config/

    • classpath:/

     2.1、file

    指當(dāng)前項(xiàng)目根目錄;

    2.2、classpath

    指當(dāng)前項(xiàng)目的類路徑,即resources目錄。

    注意事項(xiàng):

    • 位于相同位置的 application.properties 的優(yōu)先級(jí)高于application.yml

    • 所有位置的文件都會(huì)被加載,高優(yōu)先級(jí)配置會(huì)覆蓋低優(yōu)先級(jí)配置,形成互補(bǔ)配置,即:

      • 存在相同的配置內(nèi)容時(shí),高優(yōu)先級(jí)的內(nèi)容會(huì)覆蓋低優(yōu)先級(jí)的內(nèi)容;

      • 存在不同的配置內(nèi)容時(shí),高優(yōu)先級(jí)和低優(yōu)先級(jí)的配置內(nèi)容取并集。

     3、外部配置文件

    可通過指定外部配置文件的路徑(默認(rèn)配置文件失效)

    3.1、spring.config.location

      java -jar xxxx.jar --spring.config.location=外部文件

    3.2、spring.config.additional-location

    默認(rèn)配置文件公共生效,其優(yōu)先級(jí)是最高。.

     java -jar xxxx.jar --spring.config.additional-location=外部文件
    案例

    4、配置文件優(yōu)先級(jí)

    以下是常用的 Spring Boot 配置形式及其加載順序(優(yōu)先級(jí)由高到低)

    • 命令行參數(shù)

    • 配置文件(YAML文件、Properties文件)

    • @Configuration 注解類上的@PropertySource 指定的配置文件

    • 通過 SpringApplication.setDefaultProperties指定的默認(rèn)屬性

     配置文件

    Java?springboot配置文件、多環(huán)境配置與運(yùn)行優(yōu)先級(jí)的方法是什么

    到此,相信大家對(duì)“Java springboot配置文件、多環(huán)境配置與運(yùn)行優(yōu)先級(jí)的方法是什么”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

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

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

    AI