Class FileSystemXmlApplicationContext
- All Implemented Interfaces:
- Closeable, AutoCloseable, Aware, BeanFactory, BeanNameAware, HierarchicalBeanFactory, InitializingBean, ListableBeanFactory, ApplicationContext, ApplicationEventPublisher, ConfigurableApplicationContext, Lifecycle, MessageSource, EnvironmentCapable, ResourceLoader, ResourcePatternResolver
NOTE: Plain paths will always be interpreted as relative to the current VM working directory, even if they start with a slash. (This is consistent with the semantics in a Servlet container.) Use an explicit "file:" prefix to enforce an absolute file path.
The config location defaults can be overridden via AbstractRefreshableConfigApplicationContext.getConfigLocations(),
Config locations can either denote concrete files like "/myfiles/context.xml"
or Ant-style patterns like "/myfiles/*-context.xml" (see the
AntPathMatcher javadoc for pattern details).
Note: In case of multiple config locations, later bean definitions will override ones defined in earlier loaded files. This can be leveraged to deliberately override certain bean definitions via an extra XML file.
This is a simple, one-stop shop convenience ApplicationContext.
Consider using the GenericApplicationContext class in combination
with an XmlBeanDefinitionReader
for more flexible context setup.
- Author:
- Rod Johnson, Juergen Hoeller
- See Also:
- 
Nested Class SummaryNested classes/interfaces inherited from class DefaultResourceLoaderDefaultResourceLoader.ClassPathContextResource
- 
Field SummaryFields inherited from class AbstractApplicationContextAPPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAMEFields inherited from interface BeanFactoryFACTORY_BEAN_PREFIX, FACTORY_BEAN_PREFIX_CHARFields inherited from interface ConfigurableApplicationContextAPPLICATION_STARTUP_BEAN_NAME, BOOTSTRAP_EXECUTOR_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_NAMEFields inherited from interface ResourceLoaderCLASSPATH_URL_PREFIXFields inherited from interface ResourcePatternResolverCLASSPATH_ALL_URL_PREFIX
- 
Constructor SummaryConstructorsConstructorDescriptionCreate a new FileSystemXmlApplicationContext for bean-style configuration.FileSystemXmlApplicationContext(String configLocation) Create a new FileSystemXmlApplicationContext, loading the definitions from the given XML file and automatically refreshing the context.FileSystemXmlApplicationContext(String... configLocations) Create a new FileSystemXmlApplicationContext, loading the definitions from the given XML files and automatically refreshing the context.FileSystemXmlApplicationContext(String[] configLocations, boolean refresh) Create a new FileSystemXmlApplicationContext, loading the definitions from the given XML files.FileSystemXmlApplicationContext(String[] configLocations, boolean refresh, @Nullable ApplicationContext parent) Create a new FileSystemXmlApplicationContext with the given parent, loading the definitions from the given XML files.FileSystemXmlApplicationContext(String[] configLocations, ApplicationContext parent) Create a new FileSystemXmlApplicationContext with the given parent, loading the definitions from the given XML files and automatically refreshing the context.Create a new FileSystemXmlApplicationContext for bean-style configuration.
- 
Method SummaryModifier and TypeMethodDescriptionprotected ResourcegetResourceByPath(String path) Resolve resource paths as file system paths.Methods inherited from class AbstractXmlApplicationContextgetConfigResources, initBeanDefinitionReader, loadBeanDefinitions, loadBeanDefinitions, setValidatingMethods inherited from class AbstractRefreshableConfigApplicationContextafterPropertiesSet, getConfigLocations, getDefaultConfigLocations, resolvePath, setBeanName, setConfigLocation, setConfigLocations, setIdMethods inherited from class AbstractRefreshableApplicationContextassertBeanFactoryActive, cancelRefresh, closeBeanFactory, createBeanFactory, customizeBeanFactory, getBeanFactory, hasBeanFactory, refreshBeanFactory, setAllowBeanDefinitionOverriding, setAllowCircularReferencesMethods inherited from class AbstractApplicationContextaddApplicationListener, addBeanFactoryPostProcessor, clearResourceCaches, close, containsBean, containsBeanDefinition, containsLocalBean, createEnvironment, destroyBeans, doClose, findAllAnnotationsOnBean, findAnnotationOnBean, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getApplicationName, getApplicationStartup, getAutowireCapableBeanFactory, getBean, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanProvider, getBeanProvider, getBeanProvider, getBeanProvider, getBeanProvider, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getEnvironment, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getResourcePatternResolver, getResources, getStartupDate, getType, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, initPropertySources, invokeBeanFactoryPostProcessors, isActive, isClosed, isPrototype, isRunning, isSingleton, isTypeMatch, isTypeMatch, obtainFreshBeanFactory, onClose, onRefresh, pause, postProcessBeanFactory, prepareBeanFactory, prepareRefresh, publishEvent, publishEvent, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, removeApplicationListener, resetCommonCaches, restart, setApplicationStartup, setDisplayName, setEnvironment, setParent, start, stop, toStringMethods inherited from class DefaultResourceLoaderaddProtocolResolver, getClassLoader, getProtocolResolvers, getResource, getResourceCache, setClassLoaderMethods inherited from class Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface ConfigurableApplicationContextaddProtocolResolver, setClassLoaderMethods inherited from interface ResourceLoadergetClassLoader, getResource
- 
Constructor Details- 
FileSystemXmlApplicationContextpublic FileSystemXmlApplicationContext()Create a new FileSystemXmlApplicationContext for bean-style configuration.- See Also:
 
- 
FileSystemXmlApplicationContextCreate a new FileSystemXmlApplicationContext for bean-style configuration.- Parameters:
- parent- the parent context
- See Also:
 
- 
FileSystemXmlApplicationContextCreate a new FileSystemXmlApplicationContext, loading the definitions from the given XML file and automatically refreshing the context.- Parameters:
- configLocation- file path
- Throws:
- BeansException- if context creation failed
 
- 
FileSystemXmlApplicationContextCreate a new FileSystemXmlApplicationContext, loading the definitions from the given XML files and automatically refreshing the context.- Parameters:
- configLocations- array of file paths
- Throws:
- BeansException- if context creation failed
 
- 
FileSystemXmlApplicationContextpublic FileSystemXmlApplicationContext(String[] configLocations, ApplicationContext parent) throws BeansException Create a new FileSystemXmlApplicationContext with the given parent, loading the definitions from the given XML files and automatically refreshing the context.- Parameters:
- configLocations- array of file paths
- parent- the parent context
- Throws:
- BeansException- if context creation failed
 
- 
FileSystemXmlApplicationContextpublic FileSystemXmlApplicationContext(String[] configLocations, boolean refresh) throws BeansException Create a new FileSystemXmlApplicationContext, loading the definitions from the given XML files.- Parameters:
- configLocations- array of file paths
- refresh- whether to automatically refresh the context, loading all bean definitions and creating all singletons. Alternatively, call refresh manually after further configuring the context.
- Throws:
- BeansException- if context creation failed
- See Also:
 
- 
FileSystemXmlApplicationContextpublic FileSystemXmlApplicationContext(String[] configLocations, boolean refresh, @Nullable ApplicationContext parent) throws BeansException Create a new FileSystemXmlApplicationContext with the given parent, loading the definitions from the given XML files.- Parameters:
- configLocations- array of file paths
- refresh- whether to automatically refresh the context, loading all bean definitions and creating all singletons. Alternatively, call refresh manually after further configuring the context.
- parent- the parent context
- Throws:
- BeansException- if context creation failed
- See Also:
 
 
- 
- 
Method Details- 
getResourceByPathResolve resource paths as file system paths.Note: Even if a given path starts with a slash, it will get interpreted as relative to the current VM working directory. This is consistent with the semantics in a Servlet container. - Overrides:
- getResourceByPathin class- DefaultResourceLoader
- Parameters:
- path- the path to the resource
- Returns:
- the Resource handle
- See Also:
 
 
-