3. Bean容器

Bean容器

应用上下文

Spring应用中,对象生存于Spring容器当中,容器是Spring框架的核心,Spring容器使用依赖注入管理构成应用的组件,创建相互协作的组件之间的关联。

Spring容器:

  • Bean工厂:生存创建Bean对象

  • 应用上下文:Application Context,应用上下文,一个更高级的Bean工厂,基于Bean工厂而建,并提供面向应用的服务。

Spring常用应用上下文:

  • ClassPathXmlApplicationContext

    读取类路径下的XML配置文件并加上上下文定义

  • FileSystemXmlApplicationContext

    读取文件系统下的XML配置文件并加上上下文定义

  • XmlWebApplicationContext

    读取Web应用下的XML配置文件并加上上下文定义

Bean的生命周期

一个Bean从创建到销毁,如果是由BeanFactory来生成管理Bean的话,会经历以下几个阶段:

这里写图片描述

若容器实现了流程图中涉及的接口,程序将按照以上流程进行。需要我们注意的是,这些接口并不是必须实现的,可根据自己开发中的需要灵活地进行选择,没有实现相关接口时,将略去流程图中的相关步骤。

  1. Bean的建立:容器寻找Bean的信息并将其实例化

  2. 属性注入:使用依赖注入,Spring按照Bean定义信息配置Bean所有属性

  3. BeanNameAware的setBeanName():如果Bean类有实现org.springframework.beans.BeanNameAware接口,工厂调用Bean的setBeanName()方法传递Bean的ID。

  4. BeanFactoryAware的setBeanFactory():如果Bean类有实现org.springframework.beans.factory.BeanFactoryAware接口,工厂调用setBeanFactory()方法传入工厂自身。

  5. 。。。。。。

简单的来说:

  • 注册Bean到Bean工厂或者应用上下文

  • 根据注册信息创建Bean实例

  • 装配并注入Bean的属性

  • 调用Bean(由此可见,Bean在调用之前就已经初始化了)

  • 销毁Bean

猜你喜欢

转载自blog.csdn.net/sinat_37976731/article/details/81360181
3.
今日推荐