Spring-boot與maven多環境配置檔案設定
通常在開發時,不同的環境有不同的配置引數,通常會使用maven profile來選擇不同環境的配置檔案。下面介紹spring-boot專案如何與maven結合,來根據環境選擇不通的配置引數。
建立屬性配置檔案
首先為不同的環境配置不同的屬性配置檔案,命名需要滿足application-{custom_suffix}.properties格式,custom_suffix為自定義字尾,例如生產配置檔案起名為application-prod,開發配置檔案起名application-dev。其次建立application.properties屬性檔案。這些檔案存放目錄為src/main/resources。
application.properties檔案用來儲存不同環境的公共的配置,及啟用最終使用的配置檔案。
修改pom.xml檔案
新增下列配置到pom.xml檔案中。下列配置定義了dev環境,與prod環境屬性配置。properties標籤內部定義的屬性標籤activatedProperties中的值用來替換後文中@[email protected]。
<profile>
<id>dev</id>
<properties>
<activatedProperties>dev</activatedProperties >
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>release</id>
<properties>
<activatedProperties>release</activatedProperties>
</properties >
</profile>
修改pom.xml build標籤
resources部分的作用是,根據maven打包-P引數執行的屬性,來對最終屬性檔案中的引數進行替換。
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
…
</build>
修改application.properties
新增[email protected]@ 到application.properties檔案中。
最後打包時,@[email protected]
會根據-P引數被替換為dev或prod,最終application-dev或 application-prod會被作為最終要使用的屬性配置檔案(根據man -P 引數 確定)。
Spring-boot 1.3後通過@[email protected] 替代${activatedProperties} 來替換屬性檔案中的引數。
如果有其它屬性需要替換,同理修改pom.xml profile中的屬性配置即可。
原文地址
相關推薦
Spring-boot與maven多環境配置檔案設定
通常在開發時,不同的環境有不同的配置引數,通常會使用maven profile來選擇不同環境的配置檔案。下面介紹spring-boot專案如何與maven結合,來根據環境選擇不通的配置引數。 建立屬性配置檔案 首先為不同的環境配置不同的屬性配置檔案,命名
spring boot、maven自定義配置檔案
在pom.xml中設定<profiles>標籤來指定配置檔案載入路徑 <profiles> <profile> <id>local</id> <
spring boot 中logback多環境配置
spring boot 配置logback spring boot自帶了log列印功能,使用的是Commons logging 具體可以參考spring boot log 因此,我們只需要在reso
Maven 多環境配置檔案管理
通常,專案在生產環境跟開發環境中,配置引數多少會有一點差異,比如:日誌路徑、資料庫地址等等。所以每次打生產環境的包,需要修改一些配置檔案,如果手工修改配置檔案的話,就太浪費人力物力,而且還容易手滑改錯。 實際開發中需要根據不同環境將資源分別存放,構建部署包的時
spring boot多環境配置檔案讀取不到的問題。
程式碼架構: 其中application.yaml中就三行程式碼: 作用是在IED啟動的時候指定當前環境。 但是其實我不是這麼做的,而是在idea中指定。 產生問題: 引入了一個自己寫的starter[jar包],jar包中配置了test環境的配置。但是專案啟動的時候指定了prof
spring 筆記3: Spring 多環境配置檔案切換
使用Spring進行開發時,需要面對不同的執行環境,比如開發環境、測試環境、生產環境等。大多時候不同的環境需要不同的配置檔案。網上很多資料都是使用Spring的Bean definition profiles 功能來實現(https://docs.spring.io/spring/docs/4.2.
Spring Boot之JdbcTemplate多資料來源配置與使用
之前在介紹使用JdbcTemplate和Spring-data-jpa時,都使用了單資料來源。在單資料來源的情況下,Spring Boot的配置非常簡單,只需要在application.properties檔案中配置連線引數即可。但是往往隨著業務量發展,我們通常會進行資料庫拆分或是引入其他資料庫,從而我們需要
maven多環境配置及檔案命名
網上有很多相關的配置的部落格,都比較零散。找到了可以用的方案,測試有效,做記錄備份~ 專案中很多配置項,全部彙總到resources/properties目錄下,但是測試環境和生產環境的專案需要的配置檔案是不一樣的,每次打包部署不可能還修改配置檔案,因此想到偷懶。 包含兩個效
Spring Boot Profiles實現多環境下配置切換
在後端開發中,應用程式在不同的環境可能會有不同的配置,例如資料庫連線、日誌級別等,開發,測試,生產每個環境可能配置都不一致。 使用Spring Boot的Profile可以實現多場景下的配置切換,方便開發中進行測試和部署生產環境。 下面就大致介紹一下yml配置
maven 多環境配置屬性檔案
在開發過程中,我們的軟體會面對不同的執行環境,比如開發環境、測試環境、生產環境,而我們的軟體在不同的環境中,有的配置可能會不一樣,比如資料庫配置檔案、屬性檔案等等。 使用maven來實現多環境的構建可移植性,需要藉助maven提供的profile功能,通過
spring boot的Jdbc多資料來源配置實戰
一 新建依賴 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>sprin
Spring Boot2.0之多環境配置
本地開發環境 測試環境 實際專案中 區分不同的環境配置檔案資訊 首先建立三種不同場景下的配置檔案: 內容分別是: ###dev http_url="dev" ###prdhttp_url="prd" ###testhttp_url="tes
springboot maven 多環境配置 jenking構建釋出配置
在後端開發中,應用程式在不同的環境可能會有不同的配置,例如資料庫連線、日誌級別等,開發,測試,生產每個環境可能配置都不一致。 使用Spring Boot的Profile可以實現多場景下的配置切換,方便開發中進行測試和部署生產環境。 下面就大致介紹一下yml配置檔案跟properties配置檔案怎
Spring Boot 命令啟動時指定配置檔案
有以下場景: 副總經理需要去部署系統, 系統使用的是spring boot + gradle 寫的, 但是是按照模組寫的, 打包出來是 war 包, 使用 &nbs
Spring Boot整合Hibernate(多資料來源配置).md
配置資料來源: 定義兩個DataSource用來讀取application.properties中的不同配置: @Configuration public class DataSourceConfig { @Bean(
使用Maven多環境配置打包和部署
基本每個專案都會有開發環境(本地環境)、開發整合環境、測試環境、預釋出環境、正式環境。 最少也有開發環境(本地環境)、測試環境、生產環境3個環境,每個環境的配置是不一樣的,如果每次打包都手動修改配置檔案,工作量大且容易出錯。 所以這個時候就可以考慮使用mav
spring boot+mybatis+druid 多資料來源配置
application.yml(application.properties)配置: spring: datasource: druid: type: com.alibaba.druid.pool.xa.DruidXADataSource
Spring Cloud與微服務之配置檔案中心Spring Cloud Config
文章目錄 Spring Cloud Config簡介 Git上的配置檔案springcloud-config-resources springcloud-config-resources專案結構 springcloud-config-r
【bug記錄】Eclipse執行Spring Boot專案讀取不到配置檔案
專案是spring boot專案, 編寫好程式碼後,我以spring boot app的形式執行專案,結果控制檯報錯,大概是說mybatis的mapper注入失敗,原因是datasource沒找到。檢查配置檔案的資料庫配置以及mybaits的配置後,未發現錯誤。拿起八倍鏡再