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

  • 相关阅读:
    微软O365使用教程:如何邀请客户试用
    Using the ForeFront Identity Manager to Configure SharePoint 2010’s User Profile Sync Service
    SharePoint2010文档归档策略
    转发:SP 2010: Find error messages with a Correlation ID token in SharePoint 2010
    用sql server的脚本导入Excel2010或Excel2013格式数据
    sharepoint2010的调查的问题总结
    暑假第一周进度报告
    暑假第四周进度报告
    暑假第三周学习进度报告
    暑假第二周进度报告
  • 原文地址:https://www.cnblogs.com/wangruihua-521/p/3154809.html
Copyright © 2011-2022 走看看