欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot 如何根據(jù)不同profile選擇不同配置

 更新時間:2021年08月03日 11:13:20   作者:石臻臻的雜貨鋪  
這篇文章主要介紹了SpringBoot 如何根據(jù)不同profile選擇不同配置的操作方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

SpringBoot 根據(jù)不同profile選擇不同配置

附上pom的 profiles配置

	<build>
		<finalName>${project.artifactId}</finalName>
		<resources>
			<resource>
				<directory>src/main/resources/</directory>
				<filtering>true</filtering>
			</resource>

		</resources>

		<plugins>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<encoding>utf-8</encoding>
					<source>1.8</source>
					<target>1.8</target>
				</configuration>
			</plugin>
		</plugins>
	</build>

	<profiles>
		<profile>
			<id>dev</id>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>

			<properties>
				<profilesActive>dev</profilesActive>
			</properties>

		</profile>
		<profile>
			<id>test</id>
			<properties>
				<profilesActive>test</profilesActive>
			</properties>
		</profile>
		<profile>
			<id>prod</id>
			<properties>
				<profilesActive>prod</profilesActive>
			</properties>
			<build>
				<filters>
					<filter>/Users/xxx/Desktop/prod.properties</filter>
				</filters>
			</build>

		</profile>
	</profiles>

如果使用的是 application-prod.yml 文件

里面的占位符會被prod.properties替換掉

占位符用 兩個@@ 例如:@jdbc.name@

SpringBoot不同profile過濾配置文件

項目多數(shù)情況下,需要部署到不同環(huán)境中.使用maven打包,不做其它配置時,默認(rèn)輸出的jar包中,包含所有的配置文件,這樣顯然不太合理,當(dāng)不同的生產(chǎn)環(huán)境中,不希望存在其它的生產(chǎn)環(huán)境的配置文件,可采用如下配置

1.pom文件中追加profile配置

<!--不同開發(fā)環(huán)境配置-->
<profiles>
   <profile>
       <id>dev</id>
       <properties>
         <!--pa為自定義的屬性,可在application.yml文件中引用-->
           <pa>dev</pa>
       </properties>
       <activation>
           <!--不加參數(shù)默認(rèn)的profile-->
           <activeByDefault>true</activeByDefault>
       </activation>
   </profile>
   <profile>
       <id>test</id>
       <properties>
           <pa>test</pa>
       </properties>
   </profile>
<profiles>
<!--節(jié)點層級為project>profiles-->

2.pom文件中build節(jié)點下追加資源過濾選項

 <resources>
       <!--先忽略所有配置文件,后進(jìn)行需要的配置文件的追加-->
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
            <excludes>
                <exclude>**/application-*.yml</exclude>
            </excludes>
        </resource>
        <resource>
            <directory>src/main/resources</directory>
            <includes>
             <!--此處的pa代表的是profile中自定義的屬性-->
                <include>**/application-${pa}.yml</include>
            </includes>
        </resource>
 </resources>

3.application.yml文件中引用profile中定義參數(shù)

spring:
  profiles:
   # profile中定義的pa屬性
    active: @pa@

4.手動打包指定環(huán)境

mvn clean package -Dmaven.test.skip=true -Pdev
  • -Dmaven.test.skip=true 表示跳過測試,可提高打包速度
  • -P后面的參數(shù)為profile的名稱

5.開發(fā)狀態(tài)下切換不同環(huán)境

點擊路徑

  • 1.IDEA側(cè)邊欄Maven->Profiles勾選需要的環(huán)境
  • 2.項目目錄下,終端中執(zhí)行命令mvn -DskipTests=true clean install
  • 3.首次切換需要進(jìn)行如下操作,后續(xù)調(diào)試運行無需更改

PS

如上配置后,直接更改spring.profiles.active無效,且項目運行會報錯

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • springboot中.yml文件參數(shù)的讀取方式

    springboot中.yml文件參數(shù)的讀取方式

    這篇文章主要介紹了springboot中.yml文件參數(shù)的讀取方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Java超詳細(xì)分析繼承與重寫的特點

    Java超詳細(xì)分析繼承與重寫的特點

    繼承是Java面向?qū)ο缶幊讨械囊婚T。繼承是子類繼承父類的特征和行為,或者是繼承父類得方法,使的子類具有父類得的特性和行為。重寫是子類對父類的允許訪問的方法實行的過程進(jìn)行重新編寫,返回值和形參都不能改變。就是對原本的父類進(jìn)行重新編寫,但是外部接口不能被重寫
    2022-05-05
  • Java 數(shù)組迭代你會用嗎

    Java 數(shù)組迭代你會用嗎

    Java 數(shù)組是我們學(xué)習(xí)或工作中常用到的數(shù)據(jù)結(jié)構(gòu),我們會經(jīng)常寫數(shù)組迭代的代碼,本文介紹三種數(shù)組迭代的方式,感興趣的可以了解一下
    2021-09-09
  • 解析Mybatis的insert方法返回數(shù)字-2147482646的解決

    解析Mybatis的insert方法返回數(shù)字-2147482646的解決

    這篇文章主要介紹了解析Mybatis的insert方法返回數(shù)字-2147482646的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Java實現(xiàn)文件和base64流的相互轉(zhuǎn)換功能示例

    Java實現(xiàn)文件和base64流的相互轉(zhuǎn)換功能示例

    這篇文章主要介紹了Java實現(xiàn)文件和base64流的相互轉(zhuǎn)換功能,涉及Java文件讀取及base64 轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • java8中parallelStream性能測試及結(jié)果分析

    java8中parallelStream性能測試及結(jié)果分析

    本篇文章給大家用代碼實例做了segmentfaultjava8中parallelStream性能測試,并對測試結(jié)果做了說明,需要的朋友學(xué)習(xí)下吧。
    2018-01-01
  • Java 文創(chuàng)商城系統(tǒng)的實現(xiàn)流程

    Java 文創(chuàng)商城系統(tǒng)的實現(xiàn)流程

    讀萬卷書不如行萬里路,只學(xué)書上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+SSM+mysql+maven+tomcat實現(xiàn)一個文創(chuàng)商城系統(tǒng),大家可以在過程中查缺補漏,提升水平
    2021-11-11
  • 詳解SpringBoot之集成Spring AOP

    詳解SpringBoot之集成Spring AOP

    本篇文章主要介紹了詳解SpringBoot之集成Spring AOP,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • 淺析對Java關(guān)鍵字final和static的理解

    淺析對Java關(guān)鍵字final和static的理解

    本文主要給大家談?wù)勑【帉ava關(guān)鍵字final和static的理解,本文給大家介紹的較詳細(xì),需要的朋友參考參考下
    2017-04-04
  • Springmvc自定義異常處理器實現(xiàn)流程解析

    Springmvc自定義異常處理器實現(xiàn)流程解析

    這篇文章主要介紹了Springmvc自定義異常處理器實現(xiàn)流程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-07-07

最新評論