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

一文掌握SpringBoot多環(huán)境配置

 更新時間:2024年04月01日 09:16:19   作者:xiezhr  
在實際項目的開發(fā)過程中,我們程序往往需要在不同環(huán)境中運行,每個環(huán)境中的配置參數(shù)可能都會有所不同,例如數(shù)據(jù)庫連接信息、文件服務(wù)器等等,下面小編給大家介紹SpringBoot多環(huán)境配置,感興趣的朋友一起看看吧

寫在前面

在實際項目的開發(fā)過程中,我們程序往往需要在不同環(huán)境中運行。例如:開發(fā)環(huán)境、測試環(huán)境和生產(chǎn)環(huán)境。

每個環(huán)境中的配置參數(shù)可能都會有所不同,例如數(shù)據(jù)庫連接信息、文件服務(wù)器等等。

Spring Boot 提供了非常方便的方式來管理這些不同環(huán)境的配置。

一、Spring Profile 介紹

Spring ProfileSpring 框架用于處理不同環(huán)境配置的解決方案。

Profile 可以幫助我們在不改變應(yīng)用代碼的情況下,根據(jù)當前環(huán)境動態(tài)地激活或者切換不同的配置。

Spring Boot 為每個 Profile 提供了一個獨立的 application.properties(或 application.yml)配置文件。

默認情況下,Spring Boot 使用的是 application.properties 文件。

當你激活一個特定的 Profile 時,Spring Boot 會查找名為 application-{profile}.properties 的文件,并把其中的屬性加載到 Spring Environment 中。

二、Properties與YAML

Spring Boot支持使用PropertiesYAML兩種配置方式。

兩者功能類似,都能完成Spring Boot的配置,但是Properties的優(yōu)先級要高于YMAL

2.1 Properties

  • Spring Boot 默認的配置文件格式
  • 以“.”為分割的key=value鍵值對,例如,指定端口為8080 配置如下

server.port=8080

不支持復(fù)雜的數(shù)據(jù)結(jié)構(gòu),只支持字符串類型的鍵值對。因此,它的使用適用于簡單的配置場景

2.2YAML 

采用樹狀結(jié)構(gòu),一目了然

server:
 port: 8080

  • 在key后的冒號一定要跟一個空格,如“port: 8080”
  • YAML 格式文件不支持注解@PropertySource導(dǎo)入配置
  • 支持復(fù)雜的數(shù)據(jù)結(jié)構(gòu),如列表和鍵值對,因此,YAML 的使用適用于需要表示復(fù)雜數(shù)據(jù)結(jié)構(gòu)的場合

2.3 如何選擇

  • Spring Boot 應(yīng)用中,你可以根據(jù)自己的實際需求,選擇使用 YAML 還是 Properties 格式的配置文件。
  • 如果你的配置比較簡單,Properties 格式可能會更好些。
  • 如果你的配置比較復(fù)雜,或者你希望配置文件更具可讀性,那么 YAML 格式可能是更好的選擇

三、創(chuàng)建配置文件

3.1 創(chuàng)建配置文件

在實際項目開發(fā)中,我們一般有三個環(huán)境:開發(fā)(dev)、測試(test)、生產(chǎn)(prod)。我們需要建立如下幾個配置文件

  • application.yml 或者application.properties 用于存放所有環(huán)境通用的配置
  • application-dev.yml或者application-dev.properties 存放開發(fā)環(huán)境的特殊配置
  • application-test.yml或者application-test.properties 存放測試環(huán)境的特殊配置
  • application-prod.yml或者application-prod.properties 存放生產(chǎn)環(huán)境的特殊配置

3.2 配置文件內(nèi)容

①配置開發(fā)環(huán)境

application-dev.yml

server:
 port: 8080
 tomcat:
  uri-encoding: UTF-8
environment:
 name: 開發(fā)環(huán)境

application-dev.properties

server.port=8080
server.tomcat.uri-encoding=UTF-8
environment.name=開發(fā)環(huán)境

②配置生產(chǎn)環(huán)境

application-prod.yml

server:
 port: 8090
 tomcat:
  uri-encoding: UTF-8
environment:
 name: 生產(chǎn)環(huán)境

application-prod.properties

server.port=8090
server.tomcat.uri-encoding=UTF-8
environment.name=生產(chǎn)環(huán)境

application-test.ymlapplication-test.properties 配置文件類似,由于篇幅原因,這里就不一一例舉了

四、激活 Profile

在上一小節(jié)中,我們創(chuàng)建了三個配置文件即配置了三種環(huán)境,那么我們怎么才能激活對應(yīng)環(huán)境呢

4.1 配置文件激活

其實很多簡單,我們只需要在application.yml 或者application.properties 添加如下配置即可,即可激活開發(fā)環(huán)境

application.yml

# application.yml
spring
 profiles:
  active: dev

application.properties

spring.profiles.active=dev

4.2 啟動參數(shù)激活

在命令行中設(shè)置 spring.profiles.active 系統(tǒng)屬性。

例如,你可以使用以下命令來啟動你的應(yīng)用,并激活 "prod" 環(huán)境:

# 企業(yè)級項目開發(fā)中,針對生產(chǎn)環(huán)境,一般通過啟動命令再指定激活生產(chǎn) 環(huán)境
java -jar $APP_NAME --spring.profiles.active=prod

4.3 環(huán)境變量激活

我們還可以通過配置服務(wù)器系統(tǒng)環(huán)境變量來激活環(huán)境,在環(huán)境變量中設(shè)置SPRING_PROFILES_ACTIVE 即可,不過這種方式不常用,了解即可

五、測試是否生效

上一小節(jié)中,我們通過配置激活了開發(fā)環(huán)境,我們就來實際驗證以下是否生效。

出現(xiàn)下圖紅框表示部分,說明我們激活了dev 開發(fā)環(huán)境

到此這篇關(guān)于SpringBoot多環(huán)境配置的文章就介紹到這了,更多相關(guān)SpringBoot多環(huán)境配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring?Boot自動配置源碼實例解析

    Spring?Boot自動配置源碼實例解析

    Spring Boot作為Java領(lǐng)域最為流行的快速開發(fā)框架之一,其核心特性之一就是其強大的自動配置機制,下面這篇文章主要給大家介紹了關(guān)于Spring?Boot自動配置源碼的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-08-08
  • 啟用springboot security后登錄web頁面需要用戶名和密碼的解決方法

    啟用springboot security后登錄web頁面需要用戶名和密碼的解決方法

    這篇文章主要介紹了啟用springboot security后登錄web頁面需要用戶名和密碼的解決方法,也就是使用默認用戶和密碼登錄的操作方法,本文結(jié)合實例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2023-02-02
  • Java查看和修改線程優(yōu)先級操作詳解

    Java查看和修改線程優(yōu)先級操作詳解

    JAVA中每個線程都有優(yōu)化級屬性,默認情況下,新建的線程和創(chuàng)建該線程的線程優(yōu)先級是一樣的。本文將為大家詳解Java查看和修改線程優(yōu)先級操作的方法,需要的可以參考一下
    2022-08-08
  • 通過AOP攔截Spring?Boot日志并將其存入數(shù)據(jù)庫功能實現(xiàn)

    通過AOP攔截Spring?Boot日志并將其存入數(shù)據(jù)庫功能實現(xiàn)

    本文介紹了如何使用Spring Boot和AOP技術(shù)實現(xiàn)攔截系統(tǒng)日志并保存到數(shù)據(jù)庫中的功能,包括配置數(shù)據(jù)庫連接、定義日志實體類、定義日志攔截器、使用AOP攔截日志并保存到數(shù)據(jù)庫中等步驟,感興趣的朋友一起看看吧
    2023-08-08
  • Java?BeanUtils?類作用、語法與示例詳解

    Java?BeanUtils?類作用、語法與示例詳解

    BeanUtils是Apache?Commons和Spring?Framework提供的工具類,主要用于簡化JavaBean的操作,接下來通過本文給大家介紹Java?BeanUtils?類作用、語法與示例詳解,感興趣的朋友跟隨小編一起看看吧
    2025-08-08
  • SpringBoot + 微信公眾號JSAPI支付功能的實現(xiàn)

    SpringBoot + 微信公眾號JSAPI支付功能的實現(xiàn)

    這篇文章主要介紹了SpringBoot + 微信公眾號JSAPI支付功能的實現(xiàn),本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • Java ArrayList.toArray(T[]) 方法的參數(shù)類型是 T 而不是 E的原因分析

    Java ArrayList.toArray(T[]) 方法的參數(shù)類型是 T 而不是 E的原因分析

    這篇文章主要介紹了Java ArrayList.toArray(T[]) 方法的參數(shù)類型是 T 而不是 E的原因分析的相關(guān)資料,需要的朋友可以參考下
    2016-04-04
  • Java接口名稱沖突問題的講解

    Java接口名稱沖突問題的講解

    今天小編就為大家分享一篇關(guān)于Java接口名稱沖突問題的講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • SpringBoot防止大量請求攻擊的實現(xiàn)

    SpringBoot防止大量請求攻擊的實現(xiàn)

    在有些特定的時候需要加上IP訪問時間限制,防止一個IP多次訪問請求,本文主要介紹了SpringBoot防止大量請求攻擊的實現(xiàn),感興趣的可以了解一下
    2021-11-11
  • SpringBoot18 redis的配置方法

    SpringBoot18 redis的配置方法

    本文介紹在SpringBoot項目中集成和使用Redis的方法,包括添加依賴、配置文件、自定義序列化方式、使用方式、實際使用示例、常見操作總結(jié)以及注意事項,特別強調(diào)了配置類的作用,即使用JSON序列化以提高數(shù)據(jù)的可讀性、節(jié)省空間和跨語言兼容性,感興趣的朋友跟隨小編一起看看吧
    2025-11-11

最新評論

长宁县| 奉节县| 石首市| 唐山市| 科技| 黔西| 武平县| 海兴县| 班玛县| 泸州市| 尤溪县| 庄浪县| 桐乡市| 临漳县| 常宁市| 青田县| 建湖县| 两当县| 贺州市| 理塘县| 星子县| 迭部县| 延吉市| 改则县| 灵石县| 抚州市| 乐昌市| 府谷县| 鄂托克旗| 乌鲁木齐市| 葫芦岛市| 阳朔县| 全州县| 灌阳县| 叙永县| 启东市| 东兴市| 浦北县| 和龙市| 二手房| 和田市|