介绍(※)
一、为什么出现
- 复杂的配置
- 混乱的依赖管理
- 使得项目臃肿
二、优缺点
1、spring缺点
- 配置重
2、优点
- spring boot解决了spring的缺点
- 优化配置,提高了效率(约定大于配置)
- 内置tomcat,提供了自动配置,搭建spring应用的脚手架
原理(※)
自动装配
- SpringBoot是从main方法开始启动的。在main方法中我们会调用SpringApplication.run方法。
- run方法执行会调用refreshContext方法,刷新容器,扫描解析@SpringBootApplication注解。
- 此时开始调用@SpringBootApplication注解里面的内容。 这个注解里面包含了一个EnableAutoconfigure的开启自动配置的注解。这个注解里面又包含了一个Import注解,
- Import进来一个AutoConfigurationImportSelector类,这个类里面提供一下核心方法,例如getResources,帮助我们从类路径下,Meta-INF/spring-factories下,扫描所有sprintboot提供的启动器标签,根据导入的jar包就是启动器&#x