SpringBoot通常有一个名为*Application的入口类,入口类中有一个main方法,这个main方法就是一个标准的Java的应用的入口方法。
并且我们在这个类的上面会看到一个最标志性的注解:@SpringBootApplication
这个注解是最核心的注解。它是一个组合注解:
我们点击进去可以看到这个注解组合了:如下三个注解

当然有的SpringBoot版本也将其称为:@Configuration @EnableAutoConfiguration @ComponentScan 三个注解的组合,其实我们在上图中,继续点击进去查看@SpringBootConfiguration就知道了,原理是一样的。

其中:@EnableAutoConfiguration 让SpringBoot根据类路径中的jar包依赖为当前项目进行自动配置。
例如:添加了spring-boot-starter-web依赖,会自动添加Tomcat和Spring MVC的依赖,那么Spring Boot会对Tomcat和Spring MVC进行自动配置。
查看注解的源码,我们可以知道使用exclude方法来关闭特定的自动配置
例如:@SpringBootApplication(exclude ={DataSourceAutoConfiguration.class })

本文介绍了SpringBoot的入口类及其核心注解@SpringBootApplication。该注解实际上是@Configuration, @EnableAutoConfiguration和@ComponentScan的组合,用于启动自动配置。@EnableAutoConfiguration根据项目依赖自动配置如Tomcat和SpringMVC等组件,并可通过exclude排除特定自动配置。

503

被折叠的 条评论
为什么被折叠?



