java.lang.Object
org.springframework.core.io.DefaultResourceLoader
org.springframework.context.support.AbstractApplicationContext
org.springframework.context.support.GenericApplicationContext
org.springframework.context.support.GenericXmlApplicationContext
All Implemented Interfaces:
Closeable
,
AutoCloseable
,
BeanFactory
,
HierarchicalBeanFactory
,
ListableBeanFactory
,
BeanDefinitionRegistry
,
ApplicationContext
,
ApplicationEventPublisher
,
ConfigurableApplicationContext
,
Lifecycle
,
MessageSource
,
AliasRegistry
,
EnvironmentCapable
,
ResourceLoader
,
ResourcePatternResolver
Convenient application context with built-in XML support.
This is a flexible alternative to
ClassPathXmlApplicationContext
and
FileSystemXmlApplicationContext
, to be configured via setters,
with an eventual
AbstractApplicationContext.refresh()
call activating the context.
In case of multiple configuration files, bean definitions in later files
will override those defined in earlier files. This can be leveraged to
intentionally override certain bean definitions via an extra configuration
file appended to the list.
Since:
Author:
Juergen Hoeller, Chris Beams
See Also:
load(org.springframework.core.io.Resource...)
XmlBeanDefinitionReader
AnnotationConfigApplicationContext
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.core.io.
DefaultResourceLoader
DefaultResourceLoader.ClassPathContextResource
Field Summary
Fields inherited from class org.springframework.context.support.
AbstractApplicationContext
APPLICATION_EVENT_MULTICASTER_BEAN_NAME
,
LIFECYCLE_PROCESSOR_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.context.
ConfigurableApplicationContext
APPLICATION_STARTUP_BEAN_NAME
,
CONFIG_LOCATION_DELIMITERS
,
CONVERSION_SERVICE_BEAN_NAME
,
ENVIRONMENT_BEAN_NAME
,
LOAD_TIME_WEAVER_BEAN_NAME
,
SHUTDOWN_HOOK_THREAD_NAME
,
SYSTEM_ENVIRONMENT_BEAN_NAME
,
SYSTEM_PROPERTIES_BEAN_NAME
Fields inherited from interface org.springframework.core.io.
ResourceLoader
CLASSPATH_URL_PREFIX
Fields inherited from interface org.springframework.core.io.support.
ResourcePatternResolver
CLASSPATH_ALL_URL_PREFIX
Create a new GenericXmlApplicationContext that needs to be
loaded
and then manually
refreshed
.
Create a new GenericXmlApplicationContext, loading bean definitions
from the given resource locations and automatically refreshing the context.
Create a new GenericXmlApplicationContext, loading bean definitions
from the given resource locations and automatically refreshing the context.
Create a new GenericXmlApplicationContext, loading bean definitions
from the given resources and automatically refreshing the context.
Exposes the underlying
XmlBeanDefinitionReader
for additional
configuration facilities and
loadBeanDefinition
variations.
Load bean definitions from the given XML resources.
Load bean definitions from the given XML resources.
Load bean definitions from the given XML resources.
Set whether to use XML validation.
Methods inherited from class org.springframework.context.support.
GenericApplicationContext
cancelRefresh
,
closeBeanFactory
,
getAutowireCapableBeanFactory
,
getBeanDefinition
,
getBeanFactory
,
getClassLoader
,
getDefaultListableBeanFactory
,
getResource
,
getResources
,
isAlias
,
isBeanNameInUse
,
refreshBeanFactory
,
refreshForAotProcessing
,
registerAlias
,
registerBean
,
registerBean
,
registerBean
,
registerBean
,
registerBean
,
registerBean
,
registerBeanDefinition
,
removeAlias
,
removeBeanDefinition
,
setAllowBeanDefinitionOverriding
,
setAllowCircularReferences
,
setApplicationStartup
,
setClassLoader
,
setParent
,
setResourceLoader
Methods inherited from class org.springframework.context.support.
AbstractApplicationContext
addApplicationListener
,
addBeanFactoryPostProcessor
,
assertBeanFactoryActive
,
close
,
containsBean
,
containsBeanDefinition
,
containsLocalBean
,
createEnvironment
,
destroyBeans
,
doClose
,
findAllAnnotationsOnBean
,
findAnnotationOnBean
,
findAnnotationOnBean
,
finishBeanFactoryInitialization
,
finishRefresh
,
getAliases
,
getApplicationListeners
,
getApplicationName
,
getApplicationStartup
,
getBean
,
getBean
,
getBean
,
getBean
,
getBean
,
getBeanDefinitionCount
,
getBeanDefinitionNames
,
getBeanFactoryPostProcessors
,
getBeanNamesForAnnotation
,
getBeanNamesForType
,
getBeanNamesForType
,
getBeanNamesForType
,
getBeanNamesForType
,
getBeanProvider
,
getBeanProvider
,
getBeanProvider
,
getBeanProvider
,
getBeansOfType
,
getBeansOfType
,
getBeansWithAnnotation
,
getDisplayName
,
getEnvironment
,
getId
,
getInternalParentBeanFactory
,
getInternalParentMessageSource
,
getMessage
,
getMessage
,
getMessage
,
getParent
,
getParentBeanFactory
,
getResourcePatternResolver
,
getStartupDate
,
getType
,
getType
,
initApplicationEventMulticaster
,
initLifecycleProcessor
,
initMessageSource
,
initPropertySources
,
invokeBeanFactoryPostProcessors
,
isActive
,
isPrototype
,
isRunning
,
isSingleton
,
isTypeMatch
,
isTypeMatch
,
obtainFreshBeanFactory
,
onClose
,
onRefresh
,
postProcessBeanFactory
,
prepareBeanFactory
,
prepareRefresh
,
publishEvent
,
publishEvent
,
publishEvent
,
refresh
,
registerBeanPostProcessors
,
registerListeners
,
registerShutdownHook
,
removeApplicationListener
,
resetCommonCaches
,
setDisplayName
,
setId
,
start
,
stop
,
toString
Methods inherited from class org.springframework.core.io.
DefaultResourceLoader
addProtocolResolver
,
clearResourceCaches
,
getProtocolResolvers
,
getResourceByPath
,
getResourceCache
Methods inherited from class java.lang.
Object
clone
,
equals
,
finalize
,
getClass
,
hashCode
,
notify
,
notifyAll
,
wait
,
wait
,
wait
Methods inherited from interface org.springframework.core.
AliasRegistry
getAliases
Methods inherited from interface org.springframework.beans.factory.support.
BeanDefinitionRegistry
containsBeanDefinition
,
getBeanDefinitionCount
,
getBeanDefinitionNames
Methods inherited from interface org.springframework.context.
ConfigurableApplicationContext
addProtocolResolver
GenericXmlApplicationContext
public
GenericXmlApplicationContext
()
Create a new GenericXmlApplicationContext that needs to be
loaded
and then manually
refreshed
.
GenericXmlApplicationContext
public
GenericXmlApplicationContext
(
Resource
... resources)
Create a new GenericXmlApplicationContext, loading bean definitions
from the given resources and automatically refreshing the context.
Parameters:
resources
- the resources to load from
GenericXmlApplicationContext
public
GenericXmlApplicationContext
(
String
... resourceLocations)
Create a new GenericXmlApplicationContext, loading bean definitions
from the given resource locations and automatically refreshing the context.
Parameters:
resourceLocations
- the resources to load from
GenericXmlApplicationContext
public
GenericXmlApplicationContext
(
Class
<?> relativeClass,
String
... resourceNames)
Create a new GenericXmlApplicationContext, loading bean definitions
from the given resource locations and automatically refreshing the context.
Parameters:
relativeClass
- class whose package will be used as a prefix when
loading each specified resource name
resourceNames
- relatively-qualified names of resources to load
getReader
Exposes the underlying
XmlBeanDefinitionReader
for additional
configuration facilities and
loadBeanDefinition
variations.
setEnvironment
Delegates the given environment to underlying
XmlBeanDefinitionReader
.
Should be called before any call to
#load
.
Specified by:
setEnvironment
in interface
ConfigurableApplicationContext
Overrides:
setEnvironment
in class
AbstractApplicationContext
Parameters:
environment
- the new environment
See Also:
AbstractApplicationContext.createEnvironment()
public
void
load
(
Resource
... resources)
Load bean definitions from the given XML resources.
Parameters:
resources
- one or more resources to load from
public
void
load
(
String
... resourceLocations)
Load bean definitions from the given XML resources.
Parameters:
resourceLocations
- one or more resource locations to load from
public
void
load
(
Class
<?> relativeClass,
String
... resourceNames)
Load bean definitions from the given XML resources.
Parameters:
relativeClass
- class whose package will be used as a prefix when
loading each specified resource name
resourceNames
- relatively-qualified names of resources to load