1. 程式人生 > >Spring Boot(16) Auto-configuration(自動配置)

Spring Boot(16) Auto-configuration(自動配置)

16.Auto-configuration(自動配置)

1.Spring Boot自動配置嘗試根據您新增的jar依賴項自動配置Spring應用程式。例如,如果 HSQLDB在您的類路徑上,並且您尚未手動配置任何資料庫連線bean,那麼我們將自動配置記憶體資料庫。

2.您需要通過向其中一個類新增@EnableAutoConfiguration@SpringBootApplication註釋來選擇自動配置@Configuration

您應該只新增一個@SpringBootApplication@EnableAutoConfiguration 註釋。我們通常建議您僅將一個或另一個新增到主 @Configuration

類中。

16.1逐步更換自動配置

自動配置是非侵入性的,您可以隨時開始定義自己的配置以替換自動配置的特定部分。例如,如果新增自己的DataSourcebean,則預設的嵌入式資料庫支援將退回。

如果您需要了解當前正在應用的自動配置以及原因,請使用--debug交換機啟動應用程式。這將為選擇的核心記錄器啟用除錯日誌,並將自動配置報告記錄到控制檯。

16.2 禁用特定的自動配置

如果您發現正在應用您不需要的特定自動配置類,則可以使用exclude屬性@EnableAutoConfiguration來禁用它們。

import org.
springframework.boot.autoconfigure。*; import org.springframework.boot.autoconfigure.jdbc。*; import org.springframework.context.annotation。*; @Configuration @EnableAutoConfiguration(exclude = {DataSourceAutoConfiguration.class}public class MyConfiguration { }

如果類不在類路徑上,則可以使用excludeName註釋的屬性並指定完全限定名稱。最後,您還可以控制要通過spring.autoconfigure.exclude

屬性排除的自動配置類列表

您可以在註釋級別和使用屬性定義排除項。