預設配置檔案
配置檔名
預設的配置檔名是application。properties或application。yml,兩者作用是一樣的,只是格式不一樣而已。
application。properties的格式如下:
jdbc。password=123456
application。yml的格式如下:
jdbc: password: 123456
配置檔案路徑
預設的配置檔案所處路徑如下:
-file:。/config/ (根目錄下的config目錄)
-file:。/ (根目錄)
-classpath:/config/ (classpath路徑下的config目錄)
-classpath:/ (classpath路徑)
建議使用其中一個目錄即可,方便管理與維護。
載入其它配置檔案
使用@PropertySource註解。
如下程式碼片段,透過@PropertySource(“classpath:jdbc。yml”)載入classpath路徑下的jdbc。yml作為配置檔案。
@Configuration@PropertySource(“classpath:jdbc。yml”)public class ConfigFile {}
實現EnvironmentPostProcessor介面。
如下程式碼片段,透過實現EnvironmentPostProcessor介面載入檔案系統中的D:/tmp/test。properties作為配置檔案。
public class MyEnvironmentPostProcessor implements EnvironmentPostProcessor { @Override public void postProcessEnvironment(ConfigurableEnvironment environment, SpringApplication application) { try (InputStream is = new FileInputStream(“D:/tmp/test。properties”)) { Properties pro = new Properties(); pro。load(is); PropertySource ps = new PropertiesPropertySource(“testproperties”, pro); environment。getPropertySources()。addLast(ps); } catch (Exception e) { throw new RuntimeException(“載入配置檔案出錯了!”, e); } }}
多環境配置
SpringBoot提供多環境配置的機制,讓開發者靈活根據需求切換不同的配置環境。配置檔名可以為
application-{profile}。properties/yml。如:
application。properties 預設配置
application-dev。properties 開發環境配置
application-test。properties 測試環境配置
application-prod。properties 生產環境配置
在application。properties檔案中透過指定spring。profiles。active=dev(或test,或prod)來切換環境。