|
||||||||||
| 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.GenericApplicationContext
org.springframework.web.context.support.GenericWebApplicationContext
org.springframework.boot.context.embedded.EmbeddedWebApplicationContext
org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext
public class AnnotationConfigEmbeddedWebApplicationContext
EmbeddedWebApplicationContext that accepts annotated classes as input - in
particular -annotated classes, but also plain
@Configuration classes and
JSR-330 compliant classes using @Componentjavax.inject annotations. Allows for
registering classes one by one (specifying class names as config location) as well as
for classpath scanning (specifying base packages as config location).
Note: In case of multiple @Configuration classes, later @Bean
definitions will override ones defined in earlier loaded files. This can be leveraged
to deliberately override certain bean definitions via an extra Configuration class.
register(Class...),
scan(String...),
EmbeddedWebApplicationContext,
AnnotationConfigWebApplicationContext| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class org.springframework.core.io.DefaultResourceLoader |
|---|
org.springframework.core.io.DefaultResourceLoader.ClassPathContextResource |
| Field Summary |
|---|
| Fields inherited from class org.springframework.boot.context.embedded.EmbeddedWebApplicationContext |
|---|
DISPATCHER_SERVLET_NAME |
| 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.web.context.ConfigurableWebApplicationContext |
|---|
APPLICATION_CONTEXT_ID_PREFIX, SERVLET_CONFIG_BEAN_NAME |
| Fields inherited from interface org.springframework.web.context.WebApplicationContext |
|---|
CONTEXT_ATTRIBUTES_BEAN_NAME, CONTEXT_PARAMETERS_BEAN_NAME, ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, SCOPE_APPLICATION, SCOPE_GLOBAL_SESSION, SCOPE_REQUEST, SCOPE_SESSION, SERVLET_CONTEXT_BEAN_NAME |
| Fields inherited from interface org.springframework.context.ConfigurableApplicationContext |
|---|
CONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, ENVIRONMENT_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_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_ALL_URL_PREFIX |
| Fields inherited from interface org.springframework.core.io.ResourceLoader |
|---|
CLASSPATH_URL_PREFIX |
| Constructor Summary | |
|---|---|
AnnotationConfigEmbeddedWebApplicationContext()
Create a new AnnotationConfigEmbeddedWebApplicationContext that needs to be
populated through register(java.lang.Class>...) calls and then manually refreshed. |
|
AnnotationConfigEmbeddedWebApplicationContext(Class<?>... annotatedClasses)
Create a new AnnotationConfigEmbeddedWebApplicationContext, deriving bean
definitions from the given annotated classes and automatically refreshing the
context. |
|
AnnotationConfigEmbeddedWebApplicationContext(String... basePackages)
Create a new AnnotationConfigEmbeddedWebApplicationContext, scanning for
bean definitions in the given packages and automatically refreshing the context. |
|
| Method Summary | |
|---|---|
protected void |
postProcessBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory beanFactory)
Register ServletContextAwareProcessor. |
protected void |
prepareRefresh()
|
void |
refresh()
|
void |
register(Class<?>... annotatedClasses)
Register one or more annotated classes to be processed. |
void |
scan(String... basePackages)
Perform a scan within the specified base packages. |
void |
setBeanNameGenerator(org.springframework.beans.factory.support.BeanNameGenerator beanNameGenerator)
Provide a custom BeanNameGenerator for use with
AnnotatedBeanDefinitionReader and/or ClassPathBeanDefinitionScanner
, if any. |
void |
setEnvironment(org.springframework.core.env.ConfigurableEnvironment environment)
|
void |
setScopeMetadataResolver(org.springframework.context.annotation.ScopeMetadataResolver scopeMetadataResolver)
Set the ScopeMetadataResolver to use for detected bean classes. |
| Methods inherited from class org.springframework.boot.context.embedded.EmbeddedWebApplicationContext |
|---|
doClose, finishRefresh, getEmbeddedServletContainer, getEmbeddedServletContainerFactory, getNamespace, getResourceByPath, getServletConfig, getServletContextInitializerBeans, onRefresh, prepareEmbeddedWebApplicationContext, setNamespace, setServletConfig |
| Methods inherited from class org.springframework.web.context.support.GenericWebApplicationContext |
|---|
createEnvironment, getApplicationName, getConfigLocations, getResourcePatternResolver, getServletContext, getTheme, initPropertySources, setConfigLocation, setConfigLocations, setServletContext |
| Methods inherited from class org.springframework.context.support.GenericApplicationContext |
|---|
cancelRefresh, closeBeanFactory, getBeanDefinition, getBeanFactory, getDefaultListableBeanFactory, getResource, getResources, isAlias, isBeanNameInUse, refreshBeanFactory, registerAlias, registerBeanDefinition, removeAlias, removeBeanDefinition, setAllowBeanDefinitionOverriding, setAllowCircularReferences, setId, setParent, setResourceLoader |
| Methods inherited from class org.springframework.context.support.AbstractApplicationContext |
|---|
addApplicationListener, addBeanFactoryPostProcessor, assertBeanFactoryActive, close, containsBean, containsBeanDefinition, containsLocalBean, destroy, destroyBeans, findAnnotationOnBean, finishBeanFactoryInitialization, getAliases, getApplicationListeners, getAutowireCapableBeanFactory, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getEnvironment, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getStartupDate, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, obtainFreshBeanFactory, onClose, prepareBeanFactory, publishEvent, registerBeanPostProcessors, registerListeners, registerShutdownHook, setDisplayName, start, stop, toString |
| Methods inherited from class org.springframework.core.io.DefaultResourceLoader |
|---|
getClassLoader, setClassLoader |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.springframework.context.ConfigurableApplicationContext |
|---|
addApplicationListener, addBeanFactoryPostProcessor, close, getBeanFactory, getEnvironment, isActive, registerShutdownHook, setId, setParent |
| Methods inherited from interface org.springframework.context.ApplicationContext |
|---|
getAutowireCapableBeanFactory, getDisplayName, getId, getParent, getStartupDate |
| 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 |
| Methods inherited from interface org.springframework.context.Lifecycle |
|---|
isRunning, start, stop |
| Methods inherited from interface org.springframework.beans.factory.support.BeanDefinitionRegistry |
|---|
containsBeanDefinition, getBeanDefinitionCount, getBeanDefinitionNames |
| Methods inherited from interface org.springframework.core.AliasRegistry |
|---|
getAliases |
| Constructor Detail |
|---|
public AnnotationConfigEmbeddedWebApplicationContext()
AnnotationConfigEmbeddedWebApplicationContext that needs to be
populated through register(java.lang.Class>...) calls and then manually refreshed.
public AnnotationConfigEmbeddedWebApplicationContext(Class<?>... annotatedClasses)
AnnotationConfigEmbeddedWebApplicationContext, deriving bean
definitions from the given annotated classes and automatically refreshing the
context.
annotatedClasses - one or more annotated classes, e.g. @Configuration classespublic AnnotationConfigEmbeddedWebApplicationContext(String... basePackages)
AnnotationConfigEmbeddedWebApplicationContext, scanning for
bean definitions in the given packages and automatically refreshing the context.
basePackages - the packages to check for annotated classes| Method Detail |
|---|
public void setEnvironment(org.springframework.core.env.ConfigurableEnvironment environment)
Delegates given environment to underlying AnnotatedBeanDefinitionReader and
ClassPathBeanDefinitionScanner members.
setEnvironment in interface org.springframework.context.ConfigurableApplicationContextsetEnvironment in class org.springframework.context.support.AbstractApplicationContextpublic void setBeanNameGenerator(org.springframework.beans.factory.support.BeanNameGenerator beanNameGenerator)
BeanNameGenerator for use with
AnnotatedBeanDefinitionReader and/or ClassPathBeanDefinitionScanner
, if any.
Default is
AnnotationBeanNameGenerator.
Any call to this method must occur prior to calls to register(Class...)
and/or scan(String...).
AnnotatedBeanDefinitionReader.setBeanNameGenerator(org.springframework.beans.factory.support.BeanNameGenerator),
ClassPathBeanDefinitionScanner.setBeanNameGenerator(org.springframework.beans.factory.support.BeanNameGenerator)public void setScopeMetadataResolver(org.springframework.context.annotation.ScopeMetadataResolver scopeMetadataResolver)
ScopeMetadataResolver to use for detected bean classes.
The default is an AnnotationScopeMetadataResolver.
Any call to this method must occur prior to calls to register(Class...)
and/or scan(String...).
public final void register(Class<?>... annotatedClasses)
refresh() must be called in order for the context to fully process the new
class.
Calls to register(java.lang.Class>...) are idempotent; adding the same annotated class more
than once has no additional effect.
annotatedClasses - one or more annotated classes, e.g. @Configuration classesscan(String...),
refresh()public final void scan(String... basePackages)
refresh()
must be called in order for the context to fully process the new class.
basePackages - the packages to check for annotated classesregister(Class...),
refresh()protected void prepareRefresh()
prepareRefresh in class org.springframework.context.support.AbstractApplicationContextprotected void postProcessBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory beanFactory)
EmbeddedWebApplicationContext
postProcessBeanFactory in class EmbeddedWebApplicationContextServletContextAwareProcessor
public final void refresh()
throws org.springframework.beans.BeansException,
IllegalStateException
refresh in interface org.springframework.context.ConfigurableApplicationContextrefresh in class org.springframework.context.support.AbstractApplicationContextorg.springframework.beans.BeansException
IllegalStateException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||