农妇山泉一亩田 发表于 2023-6-13 22:52:59

SpringBoot启动类@SpringBootApplication注解

在springBoot的启动类中,提供了一个mai函数的程序入口,来启动加载SpringBoot程序,那么注解@SpringBootApplication,通过源码可以看到,它相当于@ComponentScan + @EnableAutoConfiguration + @SpringBootConfiguration。
https://img2023.cnblogs.com/blog/2458698/202306/2458698-20230613231210256-629378843.png
通过@SpringBootConfiguration注解的源码得知,其配置了一个@Configuration注解,来声明这是一个配置类,经过spring扫描读取其中的配置信息。所以@SpringBootConfiguration是来声明当前类是SpringBoot应用的配置类。他的内部也被也被@Component注解修饰,因此它可以被自动扫描和加载。
https://img2023.cnblogs.com/blog/2458698/202306/2458698-20230613231223159-109261029.png
通过@ComponentScan注解来指定spring要扫描的包路径。自动扫描指定包及加载子包的组件,并把他们注册到spring应用程序中。
https://img2023.cnblogs.com/blog/2458698/202306/2458698-20230613231237770-1784644376.png
通过@EnableAutoConfiguration注解,它启用了Spring Boot的自动配置机制,根据项目的依赖和配置来自动配置Spring应用程序。
总结:@SpringBootApplication注解简化了配置和启动Spring Boot应用程序的过程,通过整合@Configuration、@EnableAutoConfiguration和@ComponentScan注解,实现了自动配置、组件扫描和加载。其中,@EnableAutoConfiguration根据依赖和配置进行自动配置,@ComponentScan用于扫描并加载Spring组件,@SpringBootConfiguration标识启动类作为Spring Boot应用程序的配置类。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: SpringBoot启动类@SpringBootApplication注解