zoukankan      html  css  js  c++  java
  • Spring 之BeanFactory(转)

     BeanFactorySpring的“心脏”。它就是Spring IoC容器的真面目。

    Spring使用BeanFactory实例化、配置和管理Bean。但是,在大多数情况我们并不直接使用BeanFactory,而是使用ApplicationContext。它也是BeanFactory的一个实

    现,但是它添加了一系列“框架”的特征,比如:国际化支持、资源访问、事件传播等。



                                                    

     

     

     

            BeanFactory其实是一个接口-org.springframework.beans.factory.BeanFactory,它可以配置和管理几乎所有的Java类。当然,具体的工作是由实现BeanFactory接口

    的实现类完成。我们最常用的
    BeanFactory实现是org.springframework.beans.factory.xml.XmlBeanFactory。它从XML文件中读取Bean的定义信息。当BeanFactory被创建

    时,
    Spring验证每个Bean的配置。当然,要等Bean创建之后才能设置Bean的属性。单例(Singleton)Bean在启动时就会被BeanFactory实例化,其它的Bean在请求时创建。根

    BeanFactoryJava文档(Javadocs)介绍,“Bean定义的持久化方式没有任何的限制:LDAPRDBMSXML、属性文件,等等”。现在Spring已提供了XML文件和

    属性文件的实现。无疑,
    XML文件是定义Bean
    的最佳方式。


    BeanFactory是初始化Bean和调用它们生命周期方法的“吃苦耐劳者”。注意,BeanFactory只能管理单例(SingletonBean的生命周期。它不能管理原型(prototype,非单

    )Bean的生命周期。这是因为原型Bean实例被创建之后便被传给了客户端,
    容器失去了对它们的引用。


    BeanFactory管理Bean(组件)的生命周期

        

       
         下图描述了
    Bean的生命周期。它是由IoC容器控制。IoC容器定义Bean操作的规则,即Bean的定义(BeanDefinition)。Bean的定义包含了BeanFactory在创建Bean

    例时需要的所有信息。
    BeanFactory首先通过构造函数创建一个Bean实例,之后它会执行Bean实例的一系列之前初始化动作,初始化结束Bean将进入准备就绪(ready

    状态,这时应用程序就可以获取这些
    Bean实例了。最后,当你销毁单例(SingletonBean时,它会调用相应的销毁方法,结束Bean实例的生命周期。

     

     

     

     转自:http://www.blogjava.net/yejiansuo/archive/2010/10/18/335442.html

  • 相关阅读:
    JS小记
    chrome 插件开发
    js闭包理解
    文件名后缀详解
    Glut 回调函数小结
    vc++ 6.0下Glut的配置 及 Glut 框架介绍
    数字图像点运算实践 (直方图均衡和分段线性拉伸)
    event.keycode值大全
    Bookmarklet
    牛人经典语录
  • 原文地址:https://www.cnblogs.com/wangruihua-521/p/3154809.html
Copyright © 2011-2022 走看看