BeanFactory和ApplicationContext

BeanFactory:是Spring的最核心接口,提供了高级的IoC配置机制(IOC控制反转又称为DI依赖注入:注入依赖时将某一接口的具体实现的选择控制权从调用类中移除,转交给Spring容器借助Bean配置来实现),使管理不同类型的Bean成为可能。

继承体系

  BeanFactory位于类结构树的顶端,它主要方法就是getBean(String beanName),该方法通过名称获取指定名称的Bean。 

ApplicationContext:建立在BeanFactory基础上,提供了更多面向应用的功能。一般称BeanFactory为IoC容器,ApplicationContext为应用上线文。BeanFactory在初始化容器时没有实例化Bean,只有具体访问某个Bean时才会实例化目标Bean,而ApplicationContext在初始化应用上下文的时候就会实例化所有的单例Bean。

继承体系

  •  ApplicationEventPublisher:让容器具有发布应用上下文事件的功能,包括容器启动事件、关闭事件等等。实现了ApplicationListener事件监听接口的Bean可以接收到容器事件,并对事件进行响应处理。在ApplicationContext抽象实现类AbstractApplicationContext中有一个ApplicationEventMulticaster,它负责保存所有监听器,以便在容器产生上下文事件时通知这些监听者。
  • MessageResource:为应用提供il8n国际化消息访问功能
  • LifeCycle:该接口提供了start()和stop()两个接口,主要用于控制异步控制过程。在具体使用时,该接口同时被ApplicationContext实现以及具体的Bean实现,ApplicationContext会将start/stop的信息传递给容器中传递给所有实现了该接口的Bean,以达到管理和控制JMX、任务调度等目的。
  • ConfigutableApplicationContext:扩展与ApplicationContext,它新增了两个方法:refresh()和Close(),让ApplicationContext具有启动、刷新和关闭应用上下文的能力。在应用上下文关闭的情况下调用refresh()方法则可启动上下文,在上下文启动的情况下调用refresh()则可重新装载配置信息,调用close()方法可关闭上下文。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值