SpringBoot原理分析---@SpringBootApplication注解

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 })

 

Guess you like

Origin blog.csdn.net/LB_Captain/article/details/120962425