天天看點

Springboot 之 自定義配置檔案及讀取配置檔案

核心配置檔案是指在resources根目錄下的<code>application.properties</code>或<code>application.yml</code>配置檔案,讀取這兩個配置檔案的方法有兩種,都比較簡單。

核心配置檔案<code>application.properties</code>内容如下:

使用<code>@Value</code>方式(常用):

注意:在<code>@Value</code>的${}中包含的是核心配置檔案中的鍵名。在Controller類上加<code>@RestController</code>表示将此類中的所有視圖都以JSON方式顯示,類似于在視圖方法上加<code>@ResponseBody</code>。

通路:http://localhost:9090/index 時将得到<code>The Way 1 : Hello World Springboot!</code>

使用<code>Environment</code>方式

注意:這種方式是依賴注入<code>Evnironment</code>來完成,在建立的成員變量<code>private Environment env</code>上加上<code>@Autowired</code>注解即可完成依賴注入,然後使用<code>env.getProperty("鍵名")</code>即可讀取出對應的值。

通路:http://localhost:9090/index2 時将得到<code>The Way 2 : Hello World Springboot!</code>

為了不破壞核心檔案的原生态,但又需要有自定義的配置資訊存在,一般情況下會選擇自定義配置檔案來放這些自定義資訊,這裡在<code>resources/config</code>目錄下建立配置檔案<code>my-web.properties</code>

<code>resources/config/my-web.properties</code>内容如下:

注意:

在<code>@ConfigurationProperties</code>注釋中有兩個屬性:

<code>locations</code>:指定配置檔案的所在位置

<code>prefix</code>:指定配置檔案中鍵名稱的字首(我這裡配置檔案中所有鍵名都是以<code>web.</code>開頭)

使用<code>@Component</code>是讓該類能夠在其他地方被依賴使用,即使用<code>@Autowired</code>注釋來建立執行個體。

注意:由于在MyWebConfig類上加了注釋<code>@Component</code>,是以可以直接在這裡使用<code>@Autowired</code>來建立其執行個體對象。

通路:http://localhost:9090/config/index 時将得到<code>webName: zslin, webVersion: V 1.0, webAuthor: [email protected]</code>

繼續閱讀