建立自己的自動配置

Spring 啟動基於許多預先製作的自動配置父專案。你應該已經熟悉了 spring boot starter 專案。

你可以通過以下簡單步驟輕鬆建立自己的初始專案:

  1. 建立一些 @Configuration 類來定義預設 bean。你應儘可能使用外部屬性以允許自定義並嘗試使用自動配置幫助器註釋,如 @AutoConfigureBefore@AutoConfigureAfter@ConditionalOnBean@ConditionalOnMissingBean 等。你可以在官方文件條件註釋中找到有關每個註釋的更多詳細資訊。
  2. 放置一個聚合所有 @Configuration 類的自動配置檔案/檔案。
  3. 建立一個名為 spring.factories 的檔案並將其放在 src/main/resources/META-INF 中。
  4. spring.factories 中,使用逗號分隔的 @Configuration 類值設定 org.springframework.boot.autoconfigure.EnableAutoConfiguration 屬性:
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.mycorp.libx.autoconfigure.LibXAutoConfiguration,\
com.mycorp.libx.autoconfigure.LibXWebAutoConfiguration

使用此方法,你可以建立自己的自動配置類,這些類將由 spring-boot 選擇。Spring-boot 會自動掃描 spring.factories 檔案的所有 maven / gradle 依賴項,如果找到,則會將其中指定的所有 @Configuration 類新增到其自動配置過程中。

確保你的 auto-configuration 啟動專案不包含 spring boot maven plugin,因為它會將專案打包為可執行的 JAR,並且不會按預期的類路徑載入 - spring boot 將無法找到你的 spring.factories 並且不會載入你的配置