1. 程式人生 > >springboot程式設計式指定預設的application.properties檔案路徑

springboot程式設計式指定預設的application.properties檔案路徑

解決方案一:程式設計式指定  

Properties defaultProperties = new Properties();
InputStream in;
    try {
        in = new FileInputStream("E:/conf/application.properties");
	defaultProperties.load(in);
	in.close();
      } catch (IOException e) {
	e.printStackTrace();
      }
        SpringApplication app = new SpringApplication(EurakaApp.class);
	app.setDefaultProperties(defaultProperties);

特別注意:

這種方法無法載入yml檔案,看原始碼可以發現 defaultProperties.load方法是基於自定義的LineReader實現的,不支援yml檔案這種格式,不過也可以使用線上的工具類將yml檔案轉換為properties

解決方案二:啟動時指定  

    java -jar vPaas.jar  --spring.config.location=/home/springboot/config/application.yml

    注:這種方式是可以成功讀取yml檔案的

其他

@PropertySources({@PropertySource("file:E:/conf/jdbcConfig.properties")})

這個@PropertySources註解也可以用來載入配置,但是這種方式不能用來載入application檔案,只能載入其他的配置