Spring学习(三)之依赖注入实现

涉及源码解析。

一. 简单依赖注入测试代码:

二. 对BeanFactory bf=newXmlBeanFactory(new ClassPathResource(“…”))分析。

   BeanFactory bf=newXmlBeanFactory(newClassPathResource(“…”));有些过时了。最顶上为核心类XmlBeanFactory继承自 DefautListableBeanFactory 。

   整个BeanFactory类图:

    

总的来说逻辑关系为


1. 将配置文件封装为Resource类 Resource resource= newClassPathResource(“…”);

图示Resource跟ClassPathResource:


资源加载方式:


2. 对配置文件读取  即new XmlBeanFactory(resource) 一直到doLoadBeanDefinitions

XmlBeanFactory构造函数中有一个方法this.reader.loadBeanDefitions(resource),其中reader为XmlBeanFactoryReader核心类。类图:


读取配置文件总的逻辑图

 

文字描述为:


考虑到Resource可能有编码要求故EncodeResource.

3. doLoadBeanDefinitions

总图:


三个步骤对应三个函数:


三. 对第二句话getbean分析,未完待续...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值