6.Springboot 之 多配置檔案
在程式開發過程中可能會有這樣的需求:開發和部署的配置資訊可能會不同,以傳統的方式就是在配置檔案裡面寫好配置,在部署的時候再去修改這些配置,這樣肯定會有很多問題,比如忘記修改、修改錯誤等。 而Springboot提供了多配置檔案的支援解決了這一問題。
Springboot的多配置檔案是指:系統中存在多個配置檔案,在不同的執行環境使用不同的配置檔案即可。
建立測試專案
新建的study04專案的檔案結構如下:
|-study04(專案名稱)
| - src
| | - main
| | | - java
| | | | - com.zslin
| | | | | - RootApplication.java
| | | - resources
| | | | - application.properties
| | | | - application-dev.properties
| | | | - application-test.properties
| | - test
| | | - java
| | | | - com.zslin
| | | | | - MyTest.java
| - pom.xml
| - study04.iml
- RootApplication.java
@SpringBootApplication
public class RootApplication {
public static void main(String [] args) {
SpringApplication.run(RootApplication.class, args);
}
}
這個Java檔案沒有什麼特別,只是一個最基本的Springboot的入口
- application.properties
spring.profiles.active=dev
在核心配置檔案裡面的spring.profiles.active=dev
這個設定表示系統預設使用dev
(即application-dev.properties
- application-dev.properties
server.port=2222
test.msg=this is dev config
在這個配置檔案裡面只設置了埠為2222,和配置test.msg
為this
is dev config
- application-test.properties
server.port=1111
test.msg=this is test config
在這個配置檔案裡面和application-dev.properties
中的配置一樣,只是對應值有所不同。
現在在系統中已經有兩種不同的配置資訊,只是預設是使用application-dev.properties
中的配置。
- MyTest.java
@RunWith(SpringRunner.class)
@SpringBootTest
public class MyTest {
@Value("${test.msg}")
private String msg;
@Test
public void testConfig() {
System.out.println("cur msg is : "+ msg);
}
}
這裡的輸入結果是:cur msg is : this is dev config
,說明現在使用的配置檔案是application-dev.properties
注意: 當將application.properties
的內容修改為spring.profiles.active=test
後,再執行這個測試方法時將得到結果:cur
msg is : this is test config
- 在單元測試中指定配置檔案
@RunWith(SpringRunner.class)
@SpringBootTest
@ActiveProfiles("test")
public class MyTest2 {
@Value("${test.msg}")
private String msg;
@Test
public void testConfig() {
System.out.println("cur msg is : "+ msg);
}
}
MyTest2
與MyTest
唯一的區別就是在MyTest2
的類上多加了一個註釋,加上這個註釋就表示現在使用application-test.properties
這個配置檔案,同樣換成dev
也就是使用application-dev.properties
中的配置。
執行測試方法即可得到對應配置檔案中的資訊。
- 啟動專案時指定不同的配置檔案
啟動專案的方法一般有兩種 :
1、 執行RootApplication
中的main
方法。
2、 使用命令:mvn spring-boot:run
這兩方法預設都是使用application.properties
中的配置資訊,如果有指定spring.profiles.active
則使用指定的配置資訊,這種方式一般用在產品執行時,在開發和測試的時候則需要指定配置檔案。
執行main可以在執行裡的Config裡面來配置,這個我基本沒有使用過,我用的是第二種方法:
mvn spring-boot:run -Dspring.profiles.active=dev
即使用application-dev.properties
中的配置資訊,此時可以看到控制檯顯示系統使用的埠是dev中的2222
多配置檔案這塊我應用的較多的是在資料庫的配置,開發過程中的資料庫肯定是在本機,使用者名稱和密碼也是本機資料庫的,而當專案部署到伺服器時,資料庫的地址、使用者名稱和密碼就得修改,所以使用了多配置檔案,只需要在啟動專案的時候指定配置檔案即可。
相關推薦
6.Springboot 之 多配置檔案
在程式開發過程中可能會有這樣的需求:開發和部署的配置資訊可能會不同,以傳統的方式就是在配置檔案裡面寫好配置,在部署的時候再去修改這些配置,這樣肯定會有很多問題,比如忘記修改、修改錯誤等。 而Springboot提供了多配置檔案的支援解決了這一問題。 Springboot的多配置檔案是指:系統中存在多個配置檔
SpringBoot之屬性配置檔案詳解
在之前的各篇文章中都有提及關於application.properties的使用,主要用來配置資料庫連線、日誌相關配置等。除了這些配置內容之外,本文將具體介紹一些在application.properties配置中的其他特性和使用方法。 自定義屬性與載入 我們在使用Spring Boot的時候,通常也
【SpringBoot】SpringBoot之入門配置檔案
介紹:example02 相信很多人選擇Spring Boot主要是考慮到它既能兼顧Spring的強大功能,還能實現快速開發的便捷。我們在Spring Boot使用過程中,最直觀的感受就是沒有了原來自己整合Spring應用時繁多的XML配置內容,替代它的是在p
springboot之讀取配置檔案中文亂碼
方式一:配置檔案新增banner.charset=UTF-8 server.tomcat.uri-encoding=UTF-8 spring.http.encoding.charset=UTF-8 spring.http.encoding.enabled=true sprin
springboot之多個filter的執行順序以及配置
當專案中有多個filter時,為了便於管理,可以建立一個配置檔案,對所有的filter進行管理。有的方法可能同時需要多個filter依次對其進行過濾,這時候便需要對filter的執行進行優先順序的排序。如下:新建一個配置檔案ComponentFilterOrderConfig
使用IDEA搭建SpringBoot多環境多配置檔案
啟動SpringBoot 開啟SpringBootApplication啟動類,滑鼠右鍵RUN項,或者Ctrl+Shift+F10,生成啟動配置 生成dev環境的配置檔案 /src/main/
SpringBoot之多環境配置《二》
一個工程或者一個專案,在不同的環境中,配置都可能不一樣,如專案的訪問地址,埠,連線資料庫方式等; 出於不同環境,專案的配置檔案不一樣,springboot是給到了支援的,我們可以自由的切換對應環境的配置檔案 在application.properties同一級
SpringBoot 系列-5 配置檔案之自定義配置檔案
自定義配置檔案也是放在resources下面 我們拿rabbitMq舉個列子 內容如下: 然後我們新建一個JAVA類 package com.example.demo; import org.springframework.beans.factory.annotatio
SpringBoot 使用properties配置檔案實現多環境配置
一.前言 實際專案開發過程中會用到多個環境,比如dev,test,product環境,不同的環境可能使用不同引數,為便於部署提高效率,本篇主要通過properties配置檔案來實現多環境的配置。 二.多環境配置實現 分別建立application-dev.properties,application-te
Springboot 之 多檔案上傳-知識林
本文章來自【知識林】 檔案上傳在各種網站平臺上應用都非常廣泛,這篇文章將講述在Springboot中是如何完成檔案上傳的,Springboot是打包執行的,上傳後的檔案又該何去何從? pom.
idea springboot 多配置檔案啟動設定
idea一個專案選擇多個配置檔案啟動 1.先選擇這個點選進去 2.點選+號,選擇和你想要多配置啟動專案一樣的型別,然後選擇,我這裡是springboot 3.點選之後就是這個了, name:就是你想把這個新的例項叫什麼名字,推薦根據配置檔案來(埠號),例如,X
最簡單的SpringBoot示例之.yml配置檔案
1.上一次我們已經使用SpringBoot實現了一個簡單的HelloWord程式,辣麼接下來我們簡單的使用一下他的yml格式的配置檔案。 2.在 resources 目錄下建立一個 application.yml檔案(如下),配置資訊包括伺服器資訊和一個我們自定
springboot專案靈活化配置檔案的各種ip埠
事件起源,公司的測試每次打包都需要開發幫忙打包,然而每次打包呢,開發這邊都得把mysql的ip,memcached的ip等各種ip先修改成測試想要的再打包,這樣肯定麻煩啊。後來測試就想能不能把這調整一下,省的麻煩。後來,當然是靈感一閃啦...... 我想著就是把各個寫死的ip,用一個公共變數替代
RHEL samba 服務多配置檔案安全管理
某公司以RHEL系統配置伺服器,現為了共享各類文件資料,要求在rhel系統上建立一個共享目錄/tec,該目錄對技術部門員工完全開放,/sale目錄對銷售部門人員完全開放。現公司有如下三類人員需要登入samba伺服器使用這2個共享目錄,要求如下: 1、技術部門人員登入時,只能見到/tec,能訪問該目錄且有完全
SpringBoot學習_配置檔案的載入位置
spring boot 啟動會掃描以下位置的application.properties或者 application.yml檔案作為Spring boot的預設配置檔案 file:./config/:檔案路徑下的config資料夾 file:./:檔案路徑下 clas
SpringBoot學習_配置檔案佔位符
文章目錄 隨機數 佔位符獲取之前配置的值,如果沒有可以用:指定預設值 隨機數 ${random.value}、${random.int}、${random.long} ${random.int(10)}、${random.
Python模組之: ConfigParser 配置檔案讀取 Python模組之: ConfigParser 配置檔案讀取
Python模組之: ConfigParser 配置檔案讀取 ConfigParser用於讀寫類似INI檔案的配置檔案,配置檔案的內容可組織為組,還支援多個選項值(option-value)型別。 ConfigParser使用用的配置檔案格式由一個或多個命名的節(s
初識WCF之使用配置檔案部署WCF應用程式
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
springboot三種配置檔案上傳下載大小的配置
配置檔案為application.yml格式: spring: http: multipart: enabled: true max-file-size: 30MB max-request-size: 30MB第二種: package com.haiyiso
從SpringBoot原始碼分析 配置檔案的載入原理和優先順序
從SpringBoot原始碼分析 配置檔案的載入原理和優先順序 本文從SpringBoot原始碼分析 配置檔案的載入原理和配置檔案的優先順序 跟入原始碼之前,先提一個問題: SpringBoot 既可以載入指定目錄下的配置檔案獲取配置項,也可