Spring源代码分析-XmlBeanFactory导读 - 编程入门网
Spring源代码分析-XmlBeanFactory导读时间:2011-03-29 javaeye calmness源代码分析,是一件既痛苦又快乐的事情,看别人写的代码是通过的,但当你能够看 明白的时候,相信快乐也会随之而来,为了减少痛苦,更快的带来快乐,在这里希望通过 这篇文章对觉得困难的朋友有一个帮助。 首先来打开该类的代码,我们将看到如下代码: Java代码
这个类的代码很简单,一个成员对象加两个构造函数,从这里我们可以看出,最重要 的地方在于最后一个构造函数: Java代码
第一句就是将父亲工厂交给父类的构造函数,实际上最后也就是把父工厂保存到类的 parentBeanFactory成员对象中,这个对象是在AbstractBeanFactory抽象类中定义的,而 这个父工厂也会一直传递到该抽象类进行保存。第二句就是整个类中最重要的地方了,顾 名思义,它的目的是通过XmlBeanDefinitionReader这个XML的Reader从资源resource中( 也就是你的配置文件)读取bean的定义。接下来我们打开XmlBeanDefinitionReader的 loadBeanDefinitions方法,我们可看到在这个方法里代码就一行,调用了一个同名不同 参的方法,而参数是EncodedResource的一个实例,这个类实际上是Resource的一个包装 类,用来保存资源的Encode的,那接下来我们再看被调用的loadBeanDefinitions方法, 这个方法里最主要的部分就是: Java代码
这里的目的是将资源包装成一个InputSource,连同Resource作为参数传递到 doLoadBeanDefinitions方法 Java代码
Spring源代码分析-XmlBeanFactory导读(2)时间:2011-03-29 javaeye calmness这个方法的目的一目了然,就是为了将资源解释成为Document对象,然后调用 registerBeanDefinitions方法,这里不做详细解释,不了解的话请去看看关于JAXP的介 绍。接下来我们打开registerBeanDefinitions方法: Java代码
这里创建了一个XmlBeanDefinitionParse |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |