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属性排除的自动配置类列表

您可以在注释级别和使用属性定义排除项。

猜你喜欢

转载自blog.csdn.net/lt_zl/article/details/84301195