|
|||||||||
| 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.context.annotation.AnnotationConfigApplicationContext
public class AnnotationConfigApplicationContext
Standalone application context, accepting annotated classes as input - in particular
@Configuration-annotated classes, but also plain
@Component types and JSR-330 compliant
classes using javax.inject annotations. Allows for registering classes one by
one using register(Class...) as well as for classpath scanning using
scan(String...).
In case of multiple @Configuration classes, @Bean methods defined in
later classes will override those defined in earlier classes. This can be leveraged to
deliberately override certain bean definitions via an extra @Configuration
class.
See @Configuration Javadoc for usage examples.
register(java.lang.Class>...),
scan(java.lang.String...),
AnnotatedBeanDefinitionReader,
ClassPathBeanDefinitionScanner,
GenericXmlApplicationContext| 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.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 | |
|---|---|
AnnotationConfigApplicationContext()
Create a new AnnotationConfigApplicationContext that needs to be populated through register(java.lang.Class>...) calls and then manually refreshed. |
|
AnnotationConfigApplicationContext(Class<?>... annotatedClasses)
Create a new AnnotationConfigApplicationContext, deriving bean definitions from the given annotated classes and automatically refreshing the context. |
|
AnnotationConfigApplicationContext(String... basePackages)
Create a new AnnotationConfigApplicationContext, scanning for bean definitions in the given packages and automatically refreshing the context. |
|
| Method Summary | |
|---|---|
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(BeanNameGenerator beanNameGenerator)
Provide a custom BeanNameGenerator for use with AnnotatedBeanDefinitionReader
and/or ClassPathBeanDefinitionScanner, if any. |
void |
setEnvironment(ConfigurableEnvironment environment)
Set the Environment for this application context. |
void |
setScopeMetadataResolver(ScopeMetadataResolver scopeMetadataResolver)
Set the ScopeMetadataResolver to use for detected bean classes. |
| 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.core.io.DefaultResourceLoader |
|---|
getClassLoader, getResourceByPath, setClassLoader |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.springframework.beans.factory.support.BeanDefinitionRegistry |
|---|
containsBeanDefinition, getBeanDefinitionCount, getBeanDefinitionNames |
| Methods inherited from interface org.springframework.core.AliasRegistry |
|---|
getAliases |
| Methods inherited from interface org.springframework.core.io.ResourceLoader |
|---|
getClassLoader |
| Constructor Detail |
|---|
public AnnotationConfigApplicationContext()
register(java.lang.Class>...) calls and then manually refreshed.
public AnnotationConfigApplicationContext(Class<?>... annotatedClasses)
annotatedClasses - one or more annotated classes,
e.g. @Configuration classespublic AnnotationConfigApplicationContext(String... basePackages)
basePackages - the packages to check for annotated classes| Method Detail |
|---|
public void setEnvironment(ConfigurableEnvironment environment)
Environment for this application context.
Default value is determined by AbstractApplicationContext.createEnvironment(). Replacing the
default with this method is one option but configuration through AbstractApplicationContext.getEnvironment() should also be considered. In either case, such modifications
should be performed before AbstractApplicationContext.refresh().
Delegates given environment to underlying AnnotatedBeanDefinitionReader
and ClassPathBeanDefinitionScanner members.
setEnvironment in interface ConfigurableApplicationContextsetEnvironment in class AbstractApplicationContextenvironment - the new environmentAbstractApplicationContext.createEnvironment()public void setBeanNameGenerator(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(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 void register(Class<?>... annotatedClasses)
AbstractApplicationContext.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...),
AbstractApplicationContext.refresh()public void scan(String... basePackages)
AbstractApplicationContext.refresh() must be called in order for the context to
fully process the new class.
basePackages - the packages to check for annotated classesregister(Class...),
AbstractApplicationContext.refresh()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||