不看血亏,Spring框架源码完整版解析附步骤

本文主要探讨Spring框架的BeanFactory体系,特别是XmlBeanFactory如何读取和解析XML配置文件。通过ClassPathResource获取输入流,再利用XmlBeanDefinitionReader将XML内容转化为BeanDefinition。解析过程涉及DefaultBeanDefinitionDocumentReader和BeanDefinitionParserDelegate,详细解析beans、bean、import等标签,并映射到beanDefinition中。
摘要由CSDN通过智能技术生成

Spring框架源码解析01-(xml配置解析)

环境: spring5.X + idea

Spring 是一个工厂,是一个负责对象的创建和维护的工厂。它给我提供了一个功能齐全而且方便我们使用的ApplicationContext子接口,它最底层的接口是BeanFactory。在这个BeanFactory下面衍生了各种功能的子接口。

容器管理HierarchicalBeanFatory

自动注入
AutowireCapableBeanFactory

读取配置信息ListableBeanFactory

可以自行找一下BeanFactory类关系图,它有一个子实现类XmlBeanFactory,先说一下XML配置文件的读取

ListableBeanFactory 是读取配置信息的,它的子实现类XmlBeanFactory就是读取xml文件的具体实现。
而ApplicationContext继承了ListableBeanFactory并对xml解析做了进一步的封装所以再我们使用ApplicationContext
时直接给他一个对应位置的资源文件名它就会帮我们读取到配置信息。

ApplicationContext ctx = new ClassPathXmlApplicatiionContext("applicationContext.xml");
User user = ctx.getBean("user"); 

//我们直接用最底层的接口 BeanFactory 获取xml信息

BeanFactory bf = new XmlBeanFactory(new ClassPathResource("applicationContext.xml"));
User user = bf.getBean("user");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值