热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

SpringBoot的自动配置原理过程解析

 正文前先来一波福利推荐: 福利一:百万年薪架构师视频,该视频可以学到很多东西,是本人花钱买的VIP课程,学习消化了一年,为了支持一下女朋友公众号也方便大家学习,共享给大家。福利二

 正文前先来一波福利推荐:

 福利一:

百万年薪架构师视频,该视频可以学到很多东西,是本人花钱买的VIP课程,学习消化了一年,为了支持一下女朋友公众号也方便大家学习,共享给大家。

福利二:

毕业答辩以及工作上各种答辩,平时积累了不少精品PPT,现在共享给大家,大大小小加起来有几千套,总有适合你的一款,很多是网上是下载不到。

获取方式:

微信关注 精品3分钟 ,id为 jingpin3mins,关注后回复   百万年薪架构师 ,精品收藏PPT  获取云盘链接,谢谢大家支持!

SpringBoot的自动配置原理过程解析

-----------------------正文开始---------------------------

 

SpringBoot的最大好处就是实现了大部分的自动配置,使得开发者可以更多的关注于业务开发,避免繁琐的业务开发,但是SpringBoot如此好用的

自动注解过程着实让人忍不住的去了解一番,因为本文的注解解析过程会持续更新本部分,所以首先从简单的自动配置原理过程进行描述,后边在

学习完注解驱动开发后,进行更深入的记录;

 

自动配置原理过程解析:

万事都从SpringBoot的入口出发,首先看到入口的注解 

@SpringBootApplication

SpringBoot的自动配置原理过程解析

该注解的详细实现:

SpringBoot的自动配置原理过程解析

@EnableAutoConfiguration

 该注解主要利用了 @import(EnableAutoConfigurationImportSelector.class ) 选择器来导入一些自动配置(@import是用来进行导组件);

 进入 EnableAutoConfigurationImportSelector.class 类,然后进入父类 AutoConfigurationImportSelector 

 SpringBoot的自动配置原理过程解析

进入其父类:

SpringBoot的自动配置原理过程解析

具体看该类的方法 selectImports() 方法:

 SpringBoot的自动配置原理过程解析

进入 getCandidateConfigurations( 方法中; 该方法中 存在一个 SpringFactoriesLoader.loadFactoryNames 方法;

SpringBoot的自动配置原理过程解析

 在 loadFactoryNames 方法中 通过 classLoader.getResources 方法 得到 目标资源

 SpringBoot的自动配置原理过程解析

 进入 FACTORIES_RESOURCE_LOCATION 

SpringBoot的自动配置原理过程解析

然后重新回到 loadFactoryNames 继续往下看:

SpringBoot的自动配置原理过程解析

然后重点看 factoryClassName 这个类

SpringBoot的自动配置原理过程解析

点进入查看详细代码:

SpringBoot的自动配置原理过程解析

 

SpringBoot的自动配置原理过程解析


推荐阅读
author-avatar
yangyang19890811
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有