Spring 源码学习 08:register 注册配置类
发布日期:2021-05-19 03:30:44
浏览次数:8
分类:博客文章
本文共 564 字,大约阅读时间需要 1 分钟。
前言
看完无参构造的源码及流程之后,后面将会执行 register
方法。
register 方法,入参是我们的配置类 JavaConfig.class
,下面跟着源码继续往下走!
源码分析
this.reader.register(componentClasses);
这里执行的是 reader 的方法,入参就是传入的 JavaConfig.class
。
reader 在之前初始化,就是注册一些 PostProcessor。
- 循环,注册所有的配置类;
- doRegisterBean 开始注册。
doRegisterBean
才是真正注册 Bean 的逻辑,从名字也可以有所猜测。下面开始进入 doRegisterBean
的源码阅读:
doRegisterBean
此处代码较长,以截图代替。
通过源码可以看出,这块主要流程:
- 校验传入的
JavaConfig.class
的注解(是否需要忽略); - 处理通用注解;
- 封装为 BeanDefinitionHolder 后,注册到容器中。
debug
通过 debug 可以看出,在执行完 register
之后,相当于将 JavaConfig 作为一个 Bean 注册到容器中。
总结
在我看来前面的部分主要涉及到准备工作,至于更深层次的研究,分析,暂时没有深入。
相关推荐
转载地址:https://www.cnblogs.com/liuzhihang/p/source-spring-8.html 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
很好
[***.229.124.182]2024年04月04日 03时05分17秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
FTP文件管理项目(本地云)项目日报(四)
2021-06-30
【C++】勉强能看的线程池详解
2021-06-30
FTP文件管理项目(本地云)项目日报(五)
2021-06-30
FTP文件管理项目(本地云)项目日报(关于不定长包的测试)
2021-06-30
FTP文件管理项目(本地云)项目日报(六)
2021-06-30
FTP文件管理项目(本地云)项目日报(七)
2021-06-30
FTP文件管理项目(本地云)项目日报(八)
2021-06-30
【Linux】血泪教训 -- 动态链接库配置方法
2021-06-30
FTP文件管理项目(本地云)项目日报(九)
2021-06-30
以练代学设计模式 -- FTP文件管理项目
2021-06-30
FTP文件管理项目(本地云)项目日报(十)
2021-06-30
学以致用设计模式 之 “组合模式”
2021-06-30
我用过的设计模式(7)--享元模式
2021-06-30
MySQL数据库从入门到实战应用(学习笔记一)
2021-06-30
MySQL数据库从入门到实战应用(学习笔记二)
2021-06-30
种树:二叉树、二叉搜索树、AVL树、红黑树、哈夫曼树、B树、树与森林
2021-06-30
【C++】攻克哈希表(unordered_map)
2021-06-30
转:【答学员问】- 该如何根据岗位学习相关技能
2021-06-30
转:【答学员问】有什么经验教训,是你在面试很多次之后才知道的?
2021-06-30
消息队列:解耦、异步、削峰,现有MQ对比以及新手入门该如何选择MQ?
2021-06-30