看springboot的pom依赖的parent是spring boot starter parent
(1)首先是资源过滤 过滤application配置文件 推荐使用yml
(2)其次是pluginsmanagement 插件管理 配置了依赖环境dependency 所以在写自己的dependency的时候不用写版本
**
springbootapplication
**
元注解之一 :
@springbootconfiguration------的元注解就是一个@configuration----元注解是@component
@enableautoconfiguration----元注解是@AutoCOnfigurationPackage
@Import(AutoConfiguraqtionImportSelector.clas)---通过registar类来获取注解所在的包名 再利用gconponentscan就可以扫描了---通过getAutoConfigurationEntry来获取自动配置类的实体---利用META-INF/spring.factories 读取此文件生成properties------文件中可以看到#initializers #Application Listeners #AutoConfirgatuion Import LIsenters #Auto configuration Import Filters #Auto configure(有大量的自动配置)
@componentscan
通过conditional控制 导入了相对应的场景启动器starter 相应的自动配置才会生效
**
springApplication构造器
**
(1)判断是不是web应用
(2)设置初始化
(3)监听器
(4)判断主启动类