SpringBoot
一、什么是SpringBoot
快速构建Spring项目,敏捷开发
二、基本概念
特点
- 自动装配
- 统一依赖版本管理
- 内嵌 Tomcat
- Java Config 减少xml配置
- starter启动器集成第三方框架简单
与Spring以及MVC的关系
SpringBoot核心还是基于Spring容器的基础之上构建的,MVC只是作为一个启动器模块。
三、Java Config
将传统的xml配置替换为Java类配置的形式。
@Configuartion
标注一个类为配置类,Spring加载时会解析该类中的@Bean的方法,获取返回对象保存到容器中。
@Bean
Spring容器中的FactoryBean(工厂Bean)的注入方式, 作用就是将第三方依赖中的对象配置后创建出来,注入到Spring容器中
@ConfigurationProperties
通过prefix属性,快速将Spring环境中的多个属性绑定到一个JavaBean对象的多个属性中
@ConditionalOnXxx
在解析配置类时,按照对应条件决定是否加载对应的Bean对象
四、自动装配
- 启用自动配置 @EnableAutoConfiguration
- 自动配置类导入选择器 AutoConfigurationImportSelector
- 获取候选配置类信息 getCandidateConfigurations
- 自动配置类存放文件 META-INF/spring.factories
- 对候选自动配置类进行过滤
- 发布导入自动配置类事件
- 解析自动配置类,加载对应配置对象到容器中