最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

在SpringBoot的yml配置文件中讀取Windows系統(tǒng)環(huán)境變量的方法

 更新時間:2026年03月26日 08:26:59   作者:連杰李  
本文介紹了在SpringBoot的application.yml配置文件中使用${VARIABLE_NAME}占位符引用Windows系統(tǒng)環(huán)境變量的方法,并提供了設置默認值、在Java代碼中獲取環(huán)境變量值的建議,同時,文章詳細講述了如何通過系統(tǒng)設置和命令行設置環(huán)境變量,需要的朋友可以參考下

SpringBoot yml 配置文件,讀取 Windows 系統(tǒng)環(huán)境變量

在 Spring Boot 的 application.yml 配置文件中讀取 Windows 系統(tǒng)環(huán)境變量,主要使用 ${VARIABLE_NAME} 占位符語法。

在 yml 文件中引用環(huán)境變量

application.yml 中,你可以直接使用 ${環(huán)境變量名} 來引用對應的 Windows 系統(tǒng)環(huán)境變量。

基本語法:

# 假設 Windows 系統(tǒng)環(huán)境變量中設置了 MY_SERVER_PORT=9090
server:
  port: ${MY_SERVER_PORT}

推薦做法:設置默認值
為了防止環(huán)境變量未設置導致應用啟動失敗,強烈建議為占位符提供一個默認值。語法為 ${VARIABLE_NAME:default_value}

# 如果環(huán)境變量 MY_SERVER_PORT 未設置,則使用默認值 8080
server:
  port: ${MY_SERVER_PORT:8080}
# 數(shù)據(jù)庫配置的常見用法
spring:
  datasource:
    url: ${DB_URL:jdbc:mysql://localhost:3306/mydb}
    username: ${DB_USERNAME:root}
    password: ${DB_PASSWORD:secret}

在這個例子中,如果系統(tǒng)里設置了 DB_URL,就使用它的值;如果沒設置,就使用冒號后面的默認值。

在 Windows 中設置環(huán)境變量

你可以通過以下兩種主要方式來設置環(huán)境變量:

通過系統(tǒng)設置(永久生效)

  • 右鍵點擊“此電腦”或“我的電腦”,選擇“屬性”。
  • 點擊“高級系統(tǒng)設置”。
  • 在“系統(tǒng)屬性”窗口中,點擊“環(huán)境變量”按鈕。
  • 在“系統(tǒng)變量”區(qū)域,點擊“新建”來添加新的環(huán)境變量,或“編輯”來修改已有的變量。
  • 設置完成后,需要重啟命令行窗口或應用才能生效。

通過命令行(當前會話生效)

  • 打開命令提示符(CMD)。
  • 使用 set 命令來設置一個臨時環(huán)境變量,例如:
set MY_SERVER_PORT=9090
set DB_URL=jdbc:mysql://localhost:3306/mydb
  • 這種方式設置的環(huán)境變量只在當前命令行窗口有效,關(guān)閉窗口后即失效。

在 Java 代碼中讀取

除了在 yml 文件中引用,你也可以直接在 Java 代碼中獲取環(huán)境變量的值。

使用 @Value 注解

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

@Component
public class MyComponent {
    // 直接注入環(huán)境變量,同樣可以設置默認值
    @Value("${MY_SERVER_PORT:8080}")
    private int serverPort;
}

使用 Environment 對象

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.env.Environment;
import org.springframework.stereotype.Component;

@Component
public class MyComponent {
    @Autowired
    private Environment env;

    public void printConfig() {
        // 通過 getProperty 方法獲取
        String dbUrl = env.getProperty("DB_URL");
        System.out.println("DB URL: " + dbUrl);
    }
}

使用 @ConfigurationProperties 注解
這種方式適合將一組相關(guān)的配置屬性綁定到一個 Java Bean 中。

配置優(yōu)先級

了解 Spring Boot 的配置加載順序非常重要,因為它決定了最終生效的值。當同一個配置項在多個地方被定義時,優(yōu)先級高的會覆蓋優(yōu)先級低的。

常見的配置源優(yōu)先級從高到低排列如下:

  1. 命令行參數(shù) (例如 java -jar app.jar --server.port=9091)
  2. 系統(tǒng)環(huán)境變量 (例如 set SERVER_PORT=9090)
  3. JAR 包外部的 application.yml
  4. JAR 包內(nèi)部的 application.yml

這意味著,如果你在命令行中指定了 --server.port=9091,它將覆蓋 application.yml 文件中的任何 server.port 配置,以及系統(tǒng)環(huán)境變量 SERVER_PORT 的值。

終端獲取環(huán)境變量命令

在 Windows 系統(tǒng)中,根據(jù)你使用的終端類型(CMD 或 PowerShell),獲取環(huán)境變量的命令有所不同。以下是常用命令匯總:

1. 命令提示符 (CMD)

這是 Windows 最傳統(tǒng)的命令行工具。

目的命令示例
查看指定變量echo %變量名%echo %PATH%``echo %JAVA_HOME%
查看所有變量set`set``set
  • 注意:在 CMD 中直接輸入變量名(如 JAVA_HOME)會報錯,必須配合 echo 和百分號使用。

2. PowerShell

這是更現(xiàn)代的命令行工具,功能更強大。

目的命令示例
查看指定變量$env:變量名$env:PATH``$env:JAVA_HOME
查看所有變量Get-ChildItem Env:Get-ChildItem Env:``gci env: (簡寫)

3. 常見環(huán)境變量對照表

為了方便你測試,這里列出了一些 Windows 中常見的系統(tǒng)環(huán)境變量:

變量名說明
%PATH% / $env:PATH可執(zhí)行文件的搜索路徑
%USERPROFILE% / $env:USERPROFILE當前用戶的主目錄(如 C:\Users\YourName
%TEMP% / $env:TEMP存放臨時文件的目錄
%COMPUTERNAME% / $env:COMPUTERNAME計算機名稱
%JAVA_HOME% / $env:JAVA_HOMEJava 開發(fā)工具的安裝路徑(需手動配置)

小貼士

  • 臨時與永久:上述命令查看的是當前會話生效的變量。如果你在系統(tǒng)設置中修改了環(huán)境變量,需要重新打開終端窗口才能看到更新后的值。
  • Linux 用戶注意:Windows CMD 不使用 exportenv 命令,這些是 Linux/Unix 系統(tǒng)的命令。

以上就是在SpringBoot的yml配置文件中讀取Windows系統(tǒng)環(huán)境變量的方法的詳細內(nèi)容,更多關(guān)于SpringBoot yml文件中讀取Windows環(huán)境變量的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • java類型生命周期的詳細解析

    java類型生命周期的詳細解析

    以下是對java中的類型生命周期進行了詳細的分析介紹,需要的朋友可以過來參考下
    2013-08-08
  • Spring Mybatis Mapper模糊查詢的幾種方法

    Spring Mybatis Mapper模糊查詢的幾種方法

    在Spring結(jié)合Mybatis進行開發(fā)時,實現(xiàn)模糊查詢是一個常見需求,在Mybatis中,LIKE查詢可以通過多種方式實現(xiàn),本文給大家介紹了Spring Mybatis Mapper模糊查詢的幾種方法,需要的朋友可以參考下
    2024-03-03
  • SpringBoot實現(xiàn)網(wǎng)絡限速的方法詳解

    SpringBoot實現(xiàn)網(wǎng)絡限速的方法詳解

    這篇文章主要為大家詳細介紹了Spring Boot 3 中實現(xiàn)多維度網(wǎng)絡帶寬限速的完整方案,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的小伙伴可以了解下
    2026-01-01
  • java 三角形類 Triangle的用法詳解

    java 三角形類 Triangle的用法詳解

    這篇文章主要介紹了java 三角形類 Triangle的用法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • JavaMail郵件簡介及API概述第一篇

    JavaMail郵件簡介及API概述第一篇

    這篇文章主要為大家詳細介紹了JavaMail郵件簡介及API概述第一篇,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • Spring中的@CrossOrigin注解的使用詳細解讀

    Spring中的@CrossOrigin注解的使用詳細解讀

    這篇文章主要介紹了Spring中的@CrossOrigin注解的使用詳細解讀,跨源資源共享(CORS),是由大多數(shù)瀏覽器實現(xiàn)的W3C規(guī)范,允許對跨域請求進行靈活授權(quán),用來代替IFRAME或JSONP等非正規(guī)實現(xiàn)方式,需要的朋友可以參考下
    2023-11-11
  • SpringBoot整合tkMapper的方法

    SpringBoot整合tkMapper的方法

    項目使用SpringBoot2.0,H2數(shù)據(jù)庫,使用了?Lombok?簡化代碼,下面是本人使用SpringBoot整合tkMapper的一個小demo,記錄下來本人在此處踩得坑
    2022-11-11
  • 一鍵打包壓縮,Java項目變身JAR

    一鍵打包壓縮,Java項目變身JAR

    想要一鍵打包Java項目生成JAR文件并進行壓縮?本指南將帶你輕松駕馭這項看似復雜的任務,讓我們一起揭開神秘的面紗,輕松打包,高效出發(fā)!
    2023-12-12
  • Restful傳遞數(shù)組參數(shù)及注解大全

    Restful傳遞數(shù)組參數(shù)及注解大全

    這篇文章主要介紹了Restful傳遞數(shù)組參數(shù)及注解大全的相關(guān)資料,需要的朋友可以參考下
    2015-12-12
  • Java負載均衡算法實現(xiàn)之輪詢和加權(quán)輪詢

    Java負載均衡算法實現(xiàn)之輪詢和加權(quán)輪詢

    網(wǎng)上找了不少負載均衡算法的資源,都不夠全面,后來自己結(jié)合了網(wǎng)上的一些算法實現(xiàn),下面這篇文章主要給大家介紹了關(guān)于Java負載均衡算法實現(xiàn)之輪詢和加權(quán)輪詢的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-04-04

最新評論

临邑县| 石台县| 耿马| 城市| 炉霍县| 大英县| 洪雅县| 漳平市| 兴化市| 中宁县| 六安市| 巩留县| 长岭县| 都江堰市| 梧州市| 嘉峪关市| 卢湾区| 盱眙县| 雷州市| 德钦县| 盐山县| 靖边县| 泾阳县| 绩溪县| 农安县| 新营市| 江安县| 赤城县| 乐亭县| 萨嘎县| 原平市| 邵阳县| 突泉县| 嵩明县| 遂川县| 墨玉县| 淄博市| 烟台市| 衡阳市| 类乌齐县| 阜康市|