一篇文章学透ApplicationContext

BeanFactory与ApplicationContext关系的分析

BeanFactory是Spring中最基本的接口,它是Spring IoC容器中最底层的接口,提供了IoC容器最基本的形式,它具有最基本的 IoC 功能,负责管理 Spring Bean 的生命周期,通过 BeanFactory 可以获取指定 Bean 的实例。 ApplicationContext是BeanFactory的子接口,ApplicationContext继承了BeanFactory接口的全部功能,同时还提供了其他的一些功能。ApplicationContext是Spring中最重要的接口之一,它是Spring容器的具体实现,在BeanFactory的基础上添加了一些更加实用的功能,比如资源加载、事件发布、AOP和事务等。 因此,可以认为ApplicationContext继承了BeanFactory,拥有了更多的功能和扩展性。

ApplicationContext继承的接口与功能

  1. ResourceLoader:加载资源文件
  2. MessageSource:国际化消息的源头
  3. ApplicationEventPublisher:应用事件发布
  4. EnvironmentCapable:获取当前应用的环境信息
  5. ListableBeanFactory:提供了批量操作Bean的方法
  6. HierarchicalBeanFactory:层次性的BeanFactory,支持子容器
  7. AutowireCapableBeanFactory:Bean自动装配的BeanFactory
  8. BeanDefinitionRegistry:定义和注册BeanDefinition的接口
  9. ConfigurableApplicationContext:ApplicationContext可配置的接口,对外提供了修改bean定义、激活环境、注册shut-down hook等能力。

BeanFactory应用代码示例

public class TestBean { 
    private String name; 
    public TestBean() { 
       System.out.println("constructor of TestBean is invoked"); 
    } 
    public void setName(String name) { 
       this.name = name; 
    } 
    public String getName() { 
       return name; 
    } 
} 
public class BeanFactoryExample { 
    public static void main(String[] args) { 
        Resource resource = new Cl
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值