spring源码第二章_容器的基本实现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring源码第二章_容器的基本实现相关的知识,希望对你有一定的参考价值。

一、先用一个简单的获取bean实例的例子来了解

  1、类结构如下: 

  技术分享图片

  2、MyTestBean.java为bean对象,实体类,代码如下:

技术分享图片MyTestBean

  3、BeanFactoryTest代码如下:

技术分享图片
package org.springframework.liulei;

import java.io.IOException;
import junit.framework.TestCase;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;


/**
 * 
 * @author Liulei
 */
public class BeanFactoryTest extends TestCase{

    @SuppressWarnings("deprecation")
    public void testSimpleLoad() throws IOException{
        System.out.println(BeanFactoryTest.class.getResource("beanFactoryTest.xml"));
        BeanFactory bf = new XmlBeanFactory(new ClassPathResource("beanFactoryTest.xml",getClass()));
        MyTestBean bean = (MyTestBean) bf.getBean("myTestBean");
        System.out.println(bean.getTestStr());
    }
    
}
BeanFactoryTest

  此处以此类为主要阐述对象:

    BeanFactory bf = new XmlBeanFactory(new ClassPathResource("beanFactoryTest.xml",getClass()));

    通过XmlBeanFactory初始化的时序为:

      1、new ClassPathResource:拿到resource资源,此处路径需谨慎,"/*.xml"则是指classpath路径下的文件,"*.xml"是指当前类同项目包下的xml

      2、new XmlBeanFactory:通过XmlBeanDefinitionReader的loadBeanDefinitions(resource)方法返回bean定义的数目

 

以上是关于spring源码第二章_容器的基本实现的主要内容,如果未能解决你的问题,请参考以下文章

Spring 源码分析--容器的基本实现

2Spring 源码学习 ~ Spring 容器的基本实现

2Spring 源码学习 ~ Spring 容器的基本实现

Spring 源码学习

Spring源码阅读之Springs-beans容器的基本实现

spring源码--容器的基本实现