public class AnnotationConfigServletWebApplicationContext extends GenericWebApplicationContext implements AnnotationConfigRegistry
GenericWebApplicationContext
- 特に @Configuration
アノテーション付きクラスだけでなく、プレーンな @Component
クラスと javax.inject
アノテーションを使用する JSR-330 準拠クラスも受け入れます。クラスを 1 つずつ登録する (構成場所としてクラス名を指定する) こと、およびクラスパススキャン (基本パッケージを構成場所として指定する) を可能にします。 メモ: 複数の @Configuration
クラスの場合、後の @Bean
定義は、以前にロードされたファイルで定義されたものをオーバーライドします。これを活用して、追加の構成クラスを介して特定の Bean 定義を意図的にオーバーライドできます。
register(Class...)
, scan(String...)
DefaultResourceLoader.ClassPathContextResource
APPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAME
APPLICATION_CONTEXT_ID_PREFIX, SERVLET_CONFIG_BEAN_NAME
CONTEXT_ATTRIBUTES_BEAN_NAME, CONTEXT_PARAMETERS_BEAN_NAME, ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, SCOPE_APPLICATION, SCOPE_REQUEST, SCOPE_SESSION, SERVLET_CONTEXT_BEAN_NAME
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
FACTORY_BEAN_PREFIX
CLASSPATH_ALL_URL_PREFIX
CLASSPATH_URL_PREFIX
コンストラクターと説明 |
---|
AnnotationConfigServletWebApplicationContext() register(java.lang.Class<?>...) 呼び出しを介して入力し、手動でリフレッシュする必要がある新しい AnnotationConfigServletWebApplicationContext を作成します。 |
AnnotationConfigServletWebApplicationContext(ClassSE<?>... annotatedClasses) 新しい AnnotationConfigServletWebApplicationContext を作成し、指定されたアノテーション付きクラスから Bean 定義を取得し、コンテキストを自動的にリフレッシュします。 |
AnnotationConfigServletWebApplicationContext(DefaultListableBeanFactory beanFactory) 指定された DefaultListableBeanFactory で新しい AnnotationConfigServletWebApplicationContext を作成します。 |
AnnotationConfigServletWebApplicationContext(StringSE... basePackages) 新しい AnnotationConfigServletWebApplicationContext を作成し、指定されたパッケージの Bean 定義をスキャンし、コンテキストを自動的にリフレッシュします。 |
修飾子と型 | メソッドと説明 |
---|---|
protected void | postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) |
protected void | prepareRefresh() |
void | register(ClassSE<?>... annotatedClasses) 処理する 1 つ以上のアノテーション付きクラスを登録します。 |
<T> void | registerBean(StringSE beanName, ClassSE<T> beanClass, SupplierSE<T> supplier, BeanDefinitionCustomizer... customizers) |
void | scan(StringSE... basePackages) 指定された基本パッケージ内でスキャンを実行します。 |
void | setBeanNameGenerator(BeanNameGenerator beanNameGenerator) AnnotatedBeanDefinitionReader および / または ClassPathBeanDefinitionScanner で使用するカスタム BeanNameGenerator を提供します(ある場合)。 |
void | setEnvironment(ConfigurableEnvironment environment) |
void | setScopeMetadataResolver(ScopeMetadataResolver scopeMetadataResolver) 検出された Bean クラスに使用する ScopeMetadataResolver を設定します。 |
createEnvironment, getApplicationName, getConfigLocations, getNamespace, getResourceByPath, getResourcePatternResolver, getServletConfig, getServletContext, getTheme, initPropertySources, onRefresh, setConfigLocation, setConfigLocations, setNamespace, setServletConfig, setServletContext
cancelRefresh, closeBeanFactory, getAutowireCapableBeanFactory, getBeanDefinition, getBeanFactory, getClassLoader, getDefaultListableBeanFactory, getResource, getResources, isAlias, isBeanNameInUse, refreshBeanFactory, registerAlias, registerBean, registerBean, registerBean, registerBean, registerBean, registerBeanDefinition, removeAlias, removeBeanDefinition, setAllowBeanDefinitionOverriding, setAllowCircularReferences, setApplicationStartup, setClassLoader, setParent, setResourceLoader
addApplicationListener, addBeanFactoryPostProcessor, assertBeanFactoryActive, close, containsBean, containsBeanDefinition, containsLocalBean, destroy, destroyBeans, doClose, findAnnotationOnBean, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, 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, getStartupDate, getType, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, isTypeMatch, obtainFreshBeanFactory, onClose, prepareBeanFactory, publishEvent, publishEvent, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, resetCommonCaches, setDisplayName, setId, start, stop, toString
addProtocolResolver, clearResourceCaches, getProtocolResolvers, getResourceCache
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSE
addApplicationListener, addBeanFactoryPostProcessor, addProtocolResolver, close, getApplicationStartup, getBeanFactory, getEnvironment, isActive, refresh, registerShutdownHook, setApplicationStartup, setClassLoader, setId, setParent
getAutowireCapableBeanFactory, getDisplayName, getId, getParent, getStartupDate
containsBeanDefinition, findAnnotationOnBean, findAnnotationOnBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanProvider, getBeanProvider, getBeansOfType, getBeansOfType, getBeansWithAnnotation
containsLocalBean, getParentBeanFactory
containsBean, getAliases, getBean, getBean, getBean, getBean, getBean, getBeanProvider, getBeanProvider, getType, getType, isPrototype, isSingleton, isTypeMatch, isTypeMatch
getMessage, getMessage, getMessage
publishEvent, publishEvent
getResources
getClassLoader, getResource
containsBeanDefinition, getBeanDefinitionCount, getBeanDefinitionNames
getAliases
public AnnotationConfigServletWebApplicationContext()
register(java.lang.Class<?>...)
呼び出しを介して入力し、手動でリフレッシュする必要がある新しい AnnotationConfigServletWebApplicationContext
を作成します。public AnnotationConfigServletWebApplicationContext(DefaultListableBeanFactory beanFactory)
DefaultListableBeanFactory
を使用して新しい AnnotationConfigServletWebApplicationContext
を作成します。コンテキストは、register(java.lang.Class<?>...)
呼び出しを介して入力してから、手動でリフレッシュする必要があります。beanFactory
- このコンテキストに使用する DefaultListableBeanFactory インスタンス public AnnotationConfigServletWebApplicationContext(ClassSE<?>... annotatedClasses)
AnnotationConfigServletWebApplicationContext
を作成し、指定されたアノテーション付きクラスから Bean 定義を取得し、コンテキストを自動的にリフレッシュします。annotatedClasses
- 1 つまたは複数のアノテーション付きクラス、たとえば @Configuration
クラス public AnnotationConfigServletWebApplicationContext(StringSE... basePackages)
AnnotationConfigServletWebApplicationContext
を作成し、指定されたパッケージの Bean 定義をスキャンし、コンテキストを自動的にリフレッシュします。basePackages
- アノテーション付きクラスを確認するパッケージ public void setEnvironment(ConfigurableEnvironment environment)
指定された環境を、基礎となる AnnotatedBeanDefinitionReader
および ClassPathBeanDefinitionScanner
メンバーに委譲します。
ConfigurableApplicationContext
の setEnvironment
AbstractApplicationContext
の setEnvironment
public void setBeanNameGenerator(BeanNameGenerator beanNameGenerator)
AnnotatedBeanDefinitionReader
および / または ClassPathBeanDefinitionScanner
で使用するカスタム BeanNameGenerator
を提供します(ある場合)。 デフォルトは AnnotationBeanNameGenerator
です。
このメソッドの呼び出しは、register(Class...)
および / または scan(String...)
の呼び出しの前に行う必要があります。
public void setScopeMetadataResolver(ScopeMetadataResolver scopeMetadataResolver)
ScopeMetadataResolver
を設定します。 デフォルトは AnnotationScopeMetadataResolver
です。
このメソッドの呼び出しは、register(Class...)
および / または scan(String...)
の呼び出しの前に行う必要があります。
scopeMetadataResolver
- スコープメタデータリゾルバー public final void register(ClassSE<?>... annotatedClasses)
AbstractApplicationContext.refresh()
を呼び出す必要があることに注意してください。#register
の呼び出しはべき等です。同じアノテーション付きクラスを複数回追加しても、追加の効果はありません。
AnnotationConfigRegistry
の register
annotatedClasses
- 1 つまたは複数のアノテーション付きクラス、たとえば @Configuration
クラス scan(String...)
, AbstractApplicationContext.refresh()
public final void scan(StringSE... basePackages)
AbstractApplicationContext.refresh()
を呼び出す必要があることに注意してください。AnnotationConfigRegistry
の scan
basePackages
- アノテーション付きクラスを確認するパッケージ register(Class...)
, AbstractApplicationContext.refresh()
protected void prepareRefresh()
AbstractApplicationContext
の prepareRefresh
protected void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory)
GenericWebApplicationContext
の postProcessBeanFactory
public <T> void registerBean(StringSE beanName, ClassSE<T> beanClass, SupplierSE<T> supplier, BeanDefinitionCustomizer... customizers)
GenericApplicationContext
の registerBean