| 
 | |||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.springframework.core.io.DefaultResourceLoader
org.springframework.context.support.AbstractApplicationContext
org.springframework.context.support.AbstractRefreshableApplicationContext
Base class for ApplicationContext implementations that are supposed to support multiple refreshs, creating a new internal bean factory instance every time. Typically (but not necessarily), such a context will be driven by a set of config locations to load bean definitions from.
The only method to be implemented by subclasses is loadBeanDefinitions,
 which gets invoked on each refresh. A concrete implementation is supposed to load
 bean definitions into the given DefaultListableBeanFactory, typically delegating
 to one or more specific bean definition readers.
 
Note that there is a similar base class for WebApplicationContexts. AbstractRefreshableWebApplicationContext provides the same subclassing strategy, but additionally pre-implements all context functionality for web environments. There is also a pre-defined way to receive config locations for a web context.
Concrete standalone subclasses of this base class, reading in a specific bean definition format, are ClassPathXmlApplicationContext and FileSystemXmlApplicationContext, which both derive from the common AbstractXmlApplicationContext base class.
loadBeanDefinitions(org.springframework.beans.factory.support.DefaultListableBeanFactory), 
DefaultListableBeanFactory, 
PropertiesBeanDefinitionReader, 
XmlBeanDefinitionReader, 
AbstractRefreshableWebApplicationContext, 
AbstractXmlApplicationContext, 
ClassPathXmlApplicationContext, 
FileSystemXmlApplicationContext| Field Summary | 
| Fields inherited from class org.springframework.context.support.AbstractApplicationContext | 
| APPLICATION_EVENT_MULTICASTER_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAME | 
| Fields inherited from interface org.springframework.beans.factory.BeanFactory | 
| FACTORY_BEAN_PREFIX | 
| Fields inherited from interface org.springframework.core.io.support.ResourcePatternResolver | 
| CLASSPATH_URL_PREFIX | 
| Constructor Summary | |
| AbstractRefreshableApplicationContext()Create a new AbstractRefreshableApplicationContext with no parent. | |
| AbstractRefreshableApplicationContext(ApplicationContext parent)Create a new AbstractRefreshableApplicationContext with the given parent context. | |
| Method Summary | |
| protected  DefaultListableBeanFactory | createBeanFactory()Create the bean factory for this context. | 
|  ConfigurableListableBeanFactory | getBeanFactory()Subclasses must return their internal bean factory here. | 
| protected abstract  void | loadBeanDefinitions(DefaultListableBeanFactory beanFactory)Load bean definitions into the given bean factory, typically through delegating to one or more bean definition readers. | 
| protected  void | refreshBeanFactory()Subclasses must implement this method to perform the actual configuration load. | 
| Methods inherited from class org.springframework.core.io.DefaultResourceLoader | 
| getClassLoader, getResource, getResourceByPath | 
| Methods inherited from class java.lang.Object | 
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait | 
| Methods inherited from interface org.springframework.core.io.ResourceLoader | 
| getResource | 
| Constructor Detail | 
public AbstractRefreshableApplicationContext()
public AbstractRefreshableApplicationContext(ApplicationContext parent)
parent - the parent context| Method Detail | 
protected final void refreshBeanFactory()
                                 throws BeansException
AbstractApplicationContextA subclass will either create a new bean factory and hold a reference to it, or return a single bean factory instance that it holds. In the latter case, it will usually throw an IllegalStateException if refreshing the context more than once.
refreshBeanFactory in class AbstractApplicationContextBeansException - if initialization of the bean factory failedAbstractApplicationContext.refresh()public final ConfigurableListableBeanFactory getBeanFactory()
AbstractApplicationContext
getBeanFactory in interface ConfigurableApplicationContextgetBeanFactory in class AbstractApplicationContextAbstractApplicationContext.refresh()protected DefaultListableBeanFactory createBeanFactory()
Default implementation creates a DefaultListableBeanFactory with the internal bean factory of this context's parent as parent bean factory.
Can be overridden in subclasses.
DefaultListableBeanFactory, 
AbstractApplicationContext.getInternalParentBeanFactory()
protected abstract void loadBeanDefinitions(DefaultListableBeanFactory beanFactory)
                                     throws IOException,
                                            BeansException
beanFactory - the bean factory to load bean definitions into
IOException - if loading of bean definition files failed
BeansException - if parsing of the bean definitions failedPropertiesBeanDefinitionReader, 
XmlBeanDefinitionReader| 
 | |||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||