Spring之ApplicationContext

本文详细介绍了Spring框架中的核心组件ApplicationContext,作为Spring IoC容器的代表,它负责实例化、配置和组装bean。ApplicationContext不仅提供了Bean工厂方法,还具备资源加载、事件发布、国际化支持等功能,并能从父上下文继承,实现更灵活的应用程序配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Spring 官方文档

介绍

ApplicationContext用于为应用程序提供配置的中央接口。这在应用程序运行时是只读的,但如果实现支持,则可以重新加载

ApplicationContext提供了如下功能:

  • Bean工厂方法,用于访问应用程序组件 继承自ListableBeanFactory。
  • 以通用方式加载文件资源的能力。继承自ResourceLoader接口。
  • 将事件发布到已注册的侦听器的功能。继承自ApplicationEventPublisher接口。
  • 解决消息,支持国际化的能力。继承自MessageSource接口。
  • 从父上下文继承。后代上下文中的定义始终优先。这意味着,例如,整个Web应用程序可以使用单个父上下文,而每个servlet都有自己的子上下文,该上下文独立于任何其他servlet的子上下文。
  • 除了标准的BeanFactory 生命周期的能力,ApplicationContext实现检测和调用 ApplicationContextAware beans以及ResourceLoaderAware, ApplicationEventPublisherAware和MessageSourceAware beans

该org.springframework.context.ApplicationContext接口代表Spring IoC容器,负责实例化,配置和组装bean。容器通过读取配置元数据获取有关要实例化,配置和组装的对象的指令。配置元数据以XML,Java注释或Java代码表示。它允许您表达组成应用程序的对象以及这些对象之间丰富的相互依赖性。

源码

package org.springframework.context;

import org.springframework.beans.factory.HierarchicalBeanFactory;
import org.springframework.beans.factory.ListableBeanFactory;
import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
import org.springframework.core.env.EnvironmentCapable;
import org.springframework.core.io.support.ResourcePatternResolver;

public interface ApplicationContext extends EnvironmentCapable, ListableBeanFactory, HierarchicalBeanFactory,
		MessageSource, ApplicationEventPublisher, ResourcePatternResolver {

	String getId();
	String getApplicationName();
	String getDisplayName();
	long getStartupDate();
	ApplicationContext getParent();
	AutowireCapableBeanFactory getAutowireCapableBeanFactory() throws IllegalStateException;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值