溫馨提示×

溫馨提示×

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

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

springboot配置文件中屬性變量引用的方式是什么

發(fā)布時間:2023-05-09 15:34:42 來源:億速云 閱讀:142 作者:iii 欄目:開發(fā)技術(shù)

本文小編為大家詳細(xì)介紹“springboot配置文件中屬性變量引用的方式是什么”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“springboot配置文件中屬性變量引用的方式是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識吧。

    springboot配置文件中屬性變量引用@@

    這種屬性應(yīng)用方式是field_name=@field_value@。

    兩個@符號是springboot為替代${}屬性占位符產(chǎn)生,原因是${}會被maven處理,所以應(yīng)該是起不到引用變量的作用。

    @@方式可以引用springboot非默認(rèn)配置文件(即其他配置文件)中的變量;

    springboot默認(rèn)配置文件是src/main/resources/application.properties

    引用屬性變量方式之@@和${}的用法

    熟悉的環(huán)境區(qū)分配置方式

    springboot配置文件中屬性變量引用的方式是什么

    直接在application.properties中配置spring.profiles.active屬性來區(qū)分環(huán)境即可。

    @@到底是什么?

    ${}和@@都是springboot引用屬性變量的方式。

    ${}和@@的使用

    1)${}的使用

    最常用的就是在pom文件中對版本號的配置使用,比如如下:

    <properties>
    	        <swagger.version>2.8.0</swagger.version>
    	    </properties>
    	    
    		<dependency>
                <groupId>io.springfox</groupId>
                <artifactId>springfox-swagger2</artifactId>
                <version>${swagger.version}</version>
            </dependency>

    還有就是在配置文件或者.sh文件中的賦值操作,比如如下:

    IMAGES_NAME=brain-health-openplatform
    CONTAINER_NAME=brain-health-openplatform
    APP_PORT=7701
    APP_HOME=/home/admin/brain-health-openplatform
    #啟動容器
    docker run -d --name ${CONTAINER_NAME} -p ${APP_PORT}:${APP_PORT} -v ${APP_HOME}/logs:/logs ${CONTAINER_NAME}

    2)@@的使用

    @@方式常用于引用springboot非默認(rèn)配置文件(即其他配置文件)中的變量,是springboot為替代 屬 性 占 位 符 產(chǎn) 生 , 原 因 是 {}屬性占位符產(chǎn)生,原因是 屬性占位符產(chǎn)生,原因是{}會被maven處理,所以引用非默認(rèn)配置文件時起不到引用變量的作用。

    springboot配置文件中屬性變量引用的方式是什么

    就比如我們項目中yml是起到整體作用的,通過四個環(huán)境的配置文件,來注入不同的value值。自我感覺就和最開始的prod和test文件夾的效果是一樣的。

    3)@@引入普通的value值

    其實自己最開始的疑問并不是如何注入,而是看項目中的注入都是有歸屬關(guān)系的,就比如屬于server/spring or mybatis 又或者logging等。那么我就想配置一個普通的鏈接路徑,該如何弄呢?

    springboot配置文件中屬性變量引用的方式是什么

    其實想復(fù)雜了,只需要直接把properties中的key復(fù)制到y(tǒng)ml文件中,他就自動形成了鍵值對的形式。

    # properties文件中:
    customer.brain.training=XXX
    brain.training.report=XXX
    train.path.source=XXX
    # yml文件中的注入
    customer:
      brain:
        training: @customer.brain.training@
    brain:
      training:
        report: @brain.training.report@
    train:
      path:
        source: @train.path.source@
        // 項目中的使用,直接就是@value的正常形式
        @Value("${customer.brain.training}")
    	private String CustomerBrainTrainingUrl;

    讀到這里,這篇“springboot配置文件中屬性變量引用的方式是什么”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領(lǐng)會,如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

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

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

    AI