Spring Bean 实例的注册流程

Spring Bean 实例的注册流程

关于Spring Bean 实例的注册流程:
1.定义好Spring的配置文件。
2.通过Resource对象将Spring配置文件进行抽象,抽象成一个具体的Resource对象(如ClassPathResource)
3.定义好要使用Bean工程(各种BeanFactory).
4.定义好XmlBeanDefinitionReader对象,并将工厂对象作为参数传递进去,从而构建好二者间的关联关系。
5.通过XmlBeanDefinitionReader对象读取之前所抽象出来的Resource对象。
6.流程开始进行解析
7.针对XML文件进行各种元素以及元素属性的解析,这里面,真正的解析是通过BeanDefinitionParserDelegate对象来完成(使用委托模式)
8.通过BeanDefinitionParserDelegate对象在解析XML文件时,又使用了模板方法(pre,process,post)
9.当所有bean标签都解析完毕后,开始定义一个BeanDefinition对象,该对象是一个非常重要的对象,里面容纳了一个bean相关的所有属性
10.BeanDefinition对象创建完毕之后,Spring又会创建一个BeanDefinitionHolder对象来持有这个BeanDefinition对象。
11.BeanDefinitionHolder对象主要包含:beanName 和BeanDefinition.
12.工厂会把解析出来的bean信息存放到内部的一个ConcurrentHashMap中,key:beanName(唯一),value:BeanDefinition对象创建完毕之后,Spring又会创建一个BeanDefinition对象
13.调用Bean解析完毕的触发动作,从而触发相应的监听器的方法的执行(使用观察者模式)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100722.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JavaMD5[通俗易懂]

    JavaMD5[通俗易懂]publicclassCalPrivateKey{publicstaticvoidmain(String[]args) {StringappKey=”cee56d5722ea3afbef390e4dd1beda77″;StringappSecret=”010b02dd9b580f116c5352c5ecb7ca92″;St

    2022年7月14日
  • MySql中的longtext字段的返回问题「建议收藏」

    MySql中的longtext字段的返回问题「建议收藏」最近开发中用到了longtext这种字段。在mysql中该字段的最大长度为4G如下图所示开发中遇到的一个问题就是。例如有个article表,然后我们的页面要将数据以列表的形式展示到前端(只显示几个字段,如作者,标题等等,例如放到table中显示多条记录),但是是将该表中的所有信息都查出来,然后当用户点击某条记录的时候,会跳到详情页,在显示出详细的信息。这样当数据量比较多的时候,或者文本…

    2022年5月15日
  • Java基础三:Java 核心技术[通俗易懂]

    Java基础三:Java 核心技术[通俗易懂]目录3.Java核心技术3.1.反射机制3.2.异常3.3.多线程3.4.文件与I\O流3.Java核心技术3.1.反射机制JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。3.1.1.静态编译和动态编译静态编译:在编译时确定类型,绑定对象 动态编译:运行时确定类型,绑定对象3

    2022年7月8日
  • c++中的排序函数Sort的具体用法(vb中sort函数怎么用)

    最近在刷ACM经常用到排序,以前老是写冒泡,可把冒泡带到OJ里后发现经常超时,所以本想用快排,可是很多学长推荐用sort函数,因为自己写的快排写不好真的没有sort快,所以毅然决然选择sort函数用法1、sort函数可以三个参数也可以两个参数,必须的头文件#include和usingnamespacestd;2、它使用的排序方法是类似于快排的方法,时间复

    2022年4月14日
  • MOS管如何检测好坏[通俗易懂]

    MOS管如何检测好坏[通俗易懂]系列文章目录1.元件基础2.电路设计3.PCB设计4.元件焊接6.程序设计9.检测标准MOS管是金属—氧化物—半导体场效应晶体管,或称是金属—绝缘体—半导体。MOS管的source和drain是可以对调的,他们都是在P型backgate中形成的N型区。在多数情况下,这个两个区是一样的,即使两端对调也不会影响器件的性能。这样的器件被认为是对称的。双极型晶体管把输入端电流的微小变化放大后,在输出端输出一个大的电流变化。双极型晶体管的增益就定义为输出输入电流之比(beta)。另一种晶体管,叫

    2022年6月15日
  • python爬虫常用库

    python爬虫常用库python爬虫常用库请求库:1.requests这个库是爬虫最常用的一个库2.SeleniumSelenium是一个自动化测试工具,利用它我们可以驱动浏览器执行特定的动作,如点击、下

    2022年7月3日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号