1. 程式人生 > >SpringBoot動態獲取配置檔案

SpringBoot動態獲取配置檔案

參考部落格:

自己使用過三種方式:

1、實現EnvironmentAware介面

      其注意事項為需要重寫setEnvironment()方法:

@Configuration
@PropertySource("classpath:mybatis.properties") // 如果希望動態獲取配置可新增@PropertiySource進行指定
public class MybatisConfig implements EnvironmentAware{
    private Environment env;


    // 此處env預設讀取的應該是application.properties檔案 -- 這個待我springboot框架搭好後補充
     @Override
    public void setEnvironment(Environment env) {
        // 此處將注入都env賦值給類的成員變數env
        this.env = env;
    }
}

     使用場景:如果從配置檔案獲取的引數比較多,可以使用這種方式來進行獲取。

2、使用@value直接對映

     這個一樣可以結合@PropertiesResource使用,用來切換指定的配置檔案讀取內容。

     使用方式:參考前面的部落格即可。

     使用場景:建議在獲取較少配置的資訊的時候使用這個方式。

3、@ConfigurationProperties

主要是用來生成配置檔案component。這個方式暫時還沒有大清楚使用場景,望各位熟悉這個方式的不吝賜教。

若有更好的動態獲取配置方式,歡迎討論分享!