org.springframework.context
Interface ApplicationContext

All Superinterfaces:
ApplicationEventPublisher, BeanFactory, HierarchicalBeanFactory, ListableBeanFactory, MessageSource, ResourceLoader, ResourcePatternResolver
All Known Subinterfaces:
ConfigurableApplicationContext, ConfigurablePortletApplicationContext, ConfigurableWebApplicationContext, WebApplicationContext
All Known Implementing Classes:
AbstractApplicationContext, AbstractRefreshableApplicationContext, AbstractRefreshableConfigApplicationContext, AbstractRefreshablePortletApplicationContext, AbstractRefreshableWebApplicationContext, AbstractXmlApplicationContext, AnnotationConfigApplicationContext, AnnotationConfigWebApplicationContext, ClassPathXmlApplicationContext, FileSystemXmlApplicationContext, GenericApplicationContext, GenericWebApplicationContext, GenericXmlApplicationContext, ResourceAdapterApplicationContext, StaticApplicationContext, StaticPortletApplicationContext, StaticWebApplicationContext, XmlPortletApplicationContext, XmlWebApplicationContext

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

Central interface to provide configuration for an application. This is read-only while the application is running, but may be reloaded if the implementation supports this.

An ApplicationContext provides:

In addition to standard BeanFactory lifecycle capabilities, ApplicationContext implementations detect and invoke ApplicationContextAware beans as well as ResourceLoaderAware, ApplicationEventPublisherAware and MessageSourceAware beans.

Author:
Rod Johnson, Juergen Hoeller
See Also:
ConfigurableApplicationContext, BeanFactory, ResourceLoader

Field Summary
 
Fields inherited from interface org.springframework.beans.factory.BeanFactory
FACTORY_BEAN_PREFIX
 
Fields inherited from interface org.springframework.core.io.support.ResourcePatternResolver
CLASSPATH_ALL_URL_PREFIX
 
Fields inherited from interface org.springframework.core.io.ResourceLoader
CLASSPATH_URL_PREFIX
 
Method Summary
 AutowireCapableBeanFactory getAutowireCapableBeanFactory()
          Expose AutowireCapableBeanFactory functionality for this context.
 String getDisplayName()
          Return a friendly name for this context.
 String getId()
          Return the unique id of this application context.
 ApplicationContext getParent()
          Return the parent context, or null if there is no parent and this is the root of the context hierarchy.
 long getStartupDate()
          Return the timestamp when this context was first loaded.
 
Methods inherited from interface org.springframework.beans.factory.ListableBeanFactory
containsBeanDefinition, findAnnotationOnBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotation
 
Methods inherited from interface org.springframework.beans.factory.HierarchicalBeanFactory
containsLocalBean, getParentBeanFactory
 
Methods inherited from interface org.springframework.beans.factory.BeanFactory
containsBean, getAliases, getBean, getBean, getBean, getBean, getType, isPrototype, isSingleton, isTypeMatch
 
Methods inherited from interface org.springframework.context.MessageSource
getMessage, getMessage, getMessage
 
Methods inherited from interface org.springframework.context.ApplicationEventPublisher
publishEvent
 
Methods inherited from interface org.springframework.core.io.support.ResourcePatternResolver
getResources
 
Methods inherited from interface org.springframework.core.io.ResourceLoader
getClassLoader, getResource
 

Method Detail

getId

String getId()
Return the unique id of this application context.

Returns:
the unique id of the context, or null if none

getDisplayName

String getDisplayName()
Return a friendly name for this context.

Returns:
a display name for this context (never null)

getStartupDate

long getStartupDate()
Return the timestamp when this context was first loaded.

Returns:
the timestamp (ms) when this context was first loaded

getParent

ApplicationContext getParent()
Return the parent context, or null if there is no parent and this is the root of the context hierarchy.

Returns:
the parent context, or null if there is no parent

getAutowireCapableBeanFactory

AutowireCapableBeanFactory getAutowireCapableBeanFactory()
                                                         throws IllegalStateException
Expose AutowireCapableBeanFactory functionality for this context.

This is not typically used by application code, except for the purpose of initializing bean instances that live outside the application context, applying the Spring bean lifecycle (fully or partly) to them.

Alternatively, the internal BeanFactory exposed by the ConfigurableApplicationContext interface offers access to the AutowireCapableBeanFactory interface too. The present method mainly serves as convenient, specific facility on the ApplicationContext interface itself.

Returns:
the AutowireCapableBeanFactory for this context
Throws:
IllegalStateException - if the context does not support the AutowireCapableBeanFactory interface or does not hold an autowire-capable bean factory yet (usually if refresh() has never been called)
See Also:
ConfigurableApplicationContext.refresh(), ConfigurableApplicationContext.getBeanFactory()