资讯专栏INFORMATION COLUMN

spring: loadBeanDefinitions 时序图

guqiu / 2009人阅读

plantuml code
@startuml

"xmlBeanFactory: XmlBeanFactory" -> "reader:XmlBeanDefinitionReader" : 1: loadBeanDefinitions(resource)
activate "xmlBeanFactory: XmlBeanFactory"
activate "reader:XmlBeanDefinitionReader"
"reader:XmlBeanDefinitionReader" -> "encodedResource:EncodedResource" : 1.1: new EncodedResource(resource)

activate "encodedResource:EncodedResource"
"encodedResource:EncodedResource" --> "reader:XmlBeanDefinitionReader" : 1.2: encodedResource:EncodedResource
deactivate "encodedResource:EncodedResource"
"reader:XmlBeanDefinitionReader" -> "reader:XmlBeanDefinitionReader": 1.3: loadBeanDefinitions(encodedResource)
activate "reader:XmlBeanDefinitionReader"
"reader:XmlBeanDefinitionReader" -> "encodedResource:EncodedResource": 1.3.1: getResource()
activate "encodedResource:EncodedResource"
"encodedResource:EncodedResource" --> "reader:XmlBeanDefinitionReader" : 1.3.2: resource:Resource
deactivate "encodedResource:EncodedResource"
"reader:XmlBeanDefinitionReader" -> "resource:Resource" : 1.3.3: getInputStream()
activate "resource:Resource"
"resource:Resource" --> "reader:XmlBeanDefinitionReader": inputStream: InputStream
deactivate "resource:Resource"
"reader:XmlBeanDefinitionReader" -> "inputSource: InputSource": 1.3.5: new InputStream(inputSource)
activate "inputSource: InputSource"
"inputSource: InputSource" --> "reader:XmlBeanDefinitionReader": 1.3.6: inputSource: InputSource
deactivate "inputSource: InputSource"

"reader:XmlBeanDefinitionReader" -> "reader:XmlBeanDefinitionReader": 1.3.7: loadBeanDefinitions((inputSource, encodedResource.getResource()))
activate "reader:XmlBeanDefinitionReader"
"reader:XmlBeanDefinitionReader" --> "reader:XmlBeanDefinitionReader": 1.3.3: loadedBeanDefinitionNum:int
deactivate "reader:XmlBeanDefinitionReader"
"reader:XmlBeanDefinitionReader" --> "reader:XmlBeanDefinitionReader": 1.3.4: loadedBeanDefinitionNum:int
deactivate "reader:XmlBeanDefinitionReader"

"reader:XmlBeanDefinitionReader" --> "xmlBeanFactory: XmlBeanFactory": 1.3.4: loadedBeanDefinitionNum:int
deactivate "reader:XmlBeanDefinitionReader"
deactivate "xmlBeanFactory: XmlBeanFactory"
@enduml
img

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/73186.html

相关文章

  • Spring源码阅读——ClassPathXmlApplicationContext(一)

    摘要:的继承关系继承了,实现了接口。是所有容器的顶级接口,中所有容器都是基于的。方法创建一个新的容器。在本方法中,最重要的是,调用这个方法解析配置文件,注册。 ClassPathXmlApplicationContext的继承关系 ClassPathXmlApplicationContext继承了AbstractXmlApplicationContext,实现了ApplicationCont...

    taowen 评论0 收藏0
  • Spring源码深度解析-BeanDefinition资源定位

    摘要:后续的文章中,将更进一步的带领大家逐步深入地了解的的运行流程用于从文件系统中加载指定的文件,来以此作为资源,下面是构造函数初始化基类,主要是的初始化设置资源文件调用的方法,进行容器的刷新是容器的核心方法,我们此文中仅仅探讨前两项内容。 BeanDefinition资源定位 Spring第一步,资源来开路。链接:https://juejin.im/post/5d2945... Spri...

    jsdt 评论0 收藏0
  • Spring专题之IOC源码分析

    摘要:前言以下源码基于版本解析。实现源码分析对于的实现,总结来说就是定位加载和注册。定位就是需要定位配置文件的位置,加载就是将配置文件加载进内存注册就是通过解析配置文件注册。下面我们从其中的一种使用的方式一步一步的分析的实现源码。 前言 以下源码基于Spring 5.0.2版本解析。 什么是IOC容器? 容器,顾名思义可以用来容纳一切事物。我们平常所说的Spring IOC容器就是一个可以容...

    不知名网友 评论0 收藏0
  • Spring-IOC容器容器

    摘要:使用别名时,容器首先将别名元素所定义的别名注册到容器中。调用的方法向容器注册解析的通过对对象的解析和封装返回一个通过这个来注册对象当调用向容器注册解析的时,真正完成注册功能的是。 文章参考来自:https://www.cnblogs.com/ITtan... 文章代码来自 spring-boot 1.4.1 Release版本 Spring IoC容器对Bean定义资源的载入是从ref...

    BigTomato 评论0 收藏0
  • Spring源码阅读——ClassPathXmlApplicationContext(二)

    摘要:在上一篇文章中,分析了容器的创建,加载资源文件,将资源文件读取为。将文件中的注册定义的对象。在中对属性的解析委托给这个代理类来实现的。首先,获取节点。 在上一篇文章中,分析了ApplicationContext容器的创建,加载资源文件,将资源文件读取为Document。spring将xml文件中的Bean注册spring定义的BeanDefinition对象。在DefaultBeanD...

    Nekron 评论0 收藏0

发表评论

0条评论

guqiu

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<