1.SpringBoot框架作用
SpringBoot项目可以理解为框架的框架(工具API),简化框架的调用。
Spring整合其他的第三方框架,使得业务调用变得浑然一体
Spring IOC机制→控制反转,将对象创建的权利交给Spring容器管理,由容器管理对象的生命周期
Spring解决了框架间的耦合性问题
2.框架间的结构
2.执行流程
main→@SpringBootApplication注解
元注解:修饰注解的注解
用法:
@Target({ElementType.TYPE}) 注解对谁有效【类、方法、属性】
@Retention(RetentionPolicy.RUNTIME) 什么时期有效【整个运行期间有效】
@Documented 是否需要生成文档
@Inherited 该注解是否可以被继承 可以被继承
@SpringBootConfiguration 配置类 大配置文件 加载子包小配置文件
@ComponentScan
【@SpringBootApplication注解部分内容】
@SpringBootConfiguration注解
该注解标识了main方法的类,告诉程序主启动类是一个大的配置类,执行主启动类时会去扫描所有小的配置类,自己的配置类由主启动类负责执行,并加载,统一将对象交给spring容器管理
@ComponentScan 注解
SpringBoot启动时需要加载很多实现准备好的配置类,但是个别导入后会引起程序异常,所以需要排除个别启动项。
jar包具有依赖的传递性,通常都会进行引入,如果某些类影响程序,则需要手动排除,如不是排除整个jar包文件
@EnableAutoConfiguration 体现开箱启用
自动化的配置,包含:
@AutoConfigurationPackage【自动扫描主启动类的包路径】注:在主启动类的同包及子包中编辑
@Import({AutoConfigurationImportSelector.class}) 加载器,执行pom文件加载的启动项
SpringBoot程序启动的流程:
根据选择器执行pom.xml文件中的启动项,
各种选择器 ↓ |
web选择器 ↓ |
↓ jdbc选择器..... |
⇣⇣⇣⇣⇣⇣⇣⇣
pom.xml |
web启动项 |