Spring如何配置文件動(dòng)態(tài)讀取pom.xml中的屬性
Spring配置文件動(dòng)態(tài)讀取pom.xml屬性
需求:
配置文件中的
spring.profiles.active=${env}需要打包時(shí)動(dòng)態(tài)綁定。
方案
1.在pom.xml文件中配置啟用占位符替換
<profiles>
<!-- 本地開(kāi)發(fā) -->
<profile>
<id>dev</id>
<properties>
<env>dev</env>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<!-- 其他環(huán)境 -->
</profiles>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>- Maven 中
<filtering>的默認(rèn)值是false。 - 這意味著在復(fù)制資源文件時(shí),Maven 不會(huì)對(duì)文件進(jìn)行占位符替換(即過(guò)濾)。
2.在配置文件中配置 spring.profiles.active=@env@或者 spring.profiles.active=${env}
3.打包時(shí)選擇環(huán)境 mvn clean package -Pprod
- -P 參數(shù)用于激活 Maven 構(gòu)建中的特定配置文件(profile)
自定義占位符
如果擔(dān)心沖突,那么可以自定義占位符。
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<delimiters>
<delimiter>#{</delimiter>
<delimiter>}</delimiter>
</delimiters>
<useDefaultDelimiters>false</useDefaultDelimiters>
</configuration>
</plugin>
</plugins>
</build>總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解JavaWeb如何實(shí)現(xiàn)文件上傳和下載功能
這篇文章主要介紹了如何利用JavaWeb實(shí)現(xiàn)文件的上傳和下載功能,文中的示例代碼講解詳細(xì),對(duì)我們的學(xué)習(xí)或工作有一定的幫助,感興趣的小伙伴可以學(xué)習(xí)一下2021-12-12
SpringBoot集成PostgreSQL表級(jí)備份與恢復(fù)的實(shí)戰(zhàn)指南
本文介紹了在企業(yè)級(jí)應(yīng)用中使用SpringBoot+PostgreSQL實(shí)現(xiàn)數(shù)據(jù)備份與恢復(fù)的方法,主要包括使用pg_dump導(dǎo)出數(shù)據(jù)、pg_restore恢復(fù)數(shù)據(jù)及ProcessBuilder調(diào)用系統(tǒng)命令,并詳細(xì)解釋了ProcessBuilder、pg_dump與pg_restore的用法、參數(shù)配置及常見(jiàn)問(wèn)題解決方法2026-04-04
SpringMVC JSON數(shù)據(jù)交互實(shí)現(xiàn)過(guò)程解析
這篇文章主要介紹了SpringMVC JSON數(shù)據(jù)交互實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
Java實(shí)現(xiàn)數(shù)據(jù)庫(kù)連接的最詳細(xì)教程分享
JDBC,Java?Database?Connectivity,即Java數(shù)據(jù)庫(kù)連接,是?Java?中的一套和數(shù)據(jù)庫(kù)進(jìn)行交互的API,本文就來(lái)講講Java如何利用JDBC實(shí)現(xiàn)數(shù)據(jù)庫(kù)的連接吧2023-05-05
spring boot 2.x html中引用css和js失效問(wèn)題及解決方法
這篇文章主要介紹了spring boot 2.x html中引用css和js失效,需要的朋友可以參考下2018-11-11
Springboot使用influxDB時(shí)序數(shù)據(jù)庫(kù)的實(shí)現(xiàn)
項(xiàng)目中需要存放大量設(shè)備日志,且需要對(duì)其進(jìn)行簡(jiǎn)單的數(shù)據(jù)分析,信息提取工作,所以本文就介紹一下Springboot使用influxDB時(shí)序數(shù)據(jù)庫(kù),感興趣的可以了解一下2021-08-08
淺談Spring與SpringMVC父子容器的關(guān)系與初始化
這篇文章主要介紹了淺談Spring與SpringMVC父子容器的關(guān)系與初始化,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-08-08

