SpringBoot的自动配置机制是想基于你添加的依赖jar包来自动配置你得应用。例如, 你添加了HSQLDB,你无需手动配置任何bean,因为SpringBoot自动配置了一个内存数据库。
你可以选择添加@EnableAutoConfiguration或@SpringBootApplication来自动配置被 @Configuration注释的类。
提示
你应该在 @SpringBootApplication、@EnableAutoConfiguration两个注释间只添加一个,通常建议只在主@Configuration类中添加二者之一。
自动配置机制是非侵入式的,在任何时候,都可以使用自定义的配置来替换自动配置的一些部分。例如,如果你添加了自定义的DateSource依赖,默认的嵌入式数据库就会失效。
如果你想要知道当前自动配置机制都配置了什么以及原因,你可以打开debug开关,这样做可以启动选择的核心功能的日志功能并打印到控制台。
如果你发现有一些自动配置的类你并不想启动,你可以在@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 { }如果该类并没有在classpath下,你可以使用excludeName,它可以通过类的完全限定名来禁用配置类。同时,也可以通过spring.autoconfigure.exclude配置项来控制你得自动配置类的列表。
提示
你可以同时在注释中和配置文件中对自动配置类进行禁用
总目录:总纲 Spring Boot官方文档(2.1.5版翻译)
上一篇:15.配置类
下一篇:17.Spring Beans和依赖注入