1. 程式人生 > >Spring-boot與maven多環境配置檔案設定

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-bootmaven環境配置檔案設定

通常在開發時,不同的環境有不同的配置引數,通常會使用maven profile來選擇不同環境的配置檔案。下面介紹spring-boot專案如何與maven結合,來根據環境選擇不通的配置引數。 建立屬性配置檔案 首先為不同的環境配置不同的屬性配置檔案,命名

spring bootmaven自定義配置檔案

在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的配置後,未發現錯誤。拿起八倍鏡再