クラス AnnotationConfigApplicationContext
java.lang.ObjectSE
org.springframework.core.io.DefaultResourceLoader
org.springframework.context.support.AbstractApplicationContext
org.springframework.context.support.GenericApplicationContext
org.springframework.context.annotation.AnnotationConfigApplicationContext
- 実装されたすべてのインターフェース:
CloseableSE
、AutoCloseableSE
、BeanFactory
、HierarchicalBeanFactory
、ListableBeanFactory
、BeanDefinitionRegistry
、AnnotationConfigRegistry
、ApplicationContext
、ApplicationEventPublisher
、ConfigurableApplicationContext
、Lifecycle
、MessageSource
、AliasRegistry
、EnvironmentCapable
、ResourceLoader
、ResourcePatternResolver
public class AnnotationConfigApplicationContext
extends GenericApplicationContext
implements AnnotationConfigRegistry
コンポーネントクラスを入力として受け入れるスタンドアロンアプリケーションコンテキスト— 特に
@Configuration
アノテーション付きクラスだけでなく、プレーン @Component
型および jakarta.inject
アノテーションを使用する JSR-330 準拠クラスも受け入れます。register(Class...)
を使用してクラスを 1 つずつ登録し、scan(String...)
を使用してクラスパスをスキャンできます。
複数の @Configuration
クラスの場合、後のクラスで定義された @Bean
メソッドは、前のクラスで定義されたメソッドをオーバーライドします。これを活用して、追加の @Configuration
クラスを介して特定の Bean 定義を意図的にオーバーライドできます。
使用例については、@Configuration
の javadoc を参照してください。
- 導入:
- 3.0
- 作成者:
- Juergen Hoeller, Chris Beams
- 関連事項:
ネストされたクラスのサマリー
クラス org.springframework.core.io.DefaultResourceLoader から継承されたネストクラス / インターフェース
DefaultResourceLoader.ClassPathContextResource
フィールドサマリー
クラス org.springframework.context.support.AbstractApplicationContext から継承されたフィールド
APPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAME
インターフェース org.springframework.beans.factory.BeanFactory から継承されたフィールド
FACTORY_BEAN_PREFIX
インターフェース org.springframework.context.ConfigurableApplicationContext から継承されたフィールド
APPLICATION_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_NAME
インターフェース org.springframework.core.io.ResourceLoader から継承されたフィールド
CLASSPATH_URL_PREFIX
インターフェース org.springframework.core.io.support.ResourcePatternResolver から継承されたフィールド
CLASSPATH_ALL_URL_PREFIX
コンストラクターのサマリー
コンストラクター説明register(java.lang.Class<?>...)
呼び出しを介してデータを取り込み、手動でリフレッシュする必要がある新しい AnnotationConfigApplicationContext を作成します。AnnotationConfigApplicationContext
(ClassSE<?>... componentClasses) 新しい AnnotationConfigApplicationContext を作成し、指定されたコンポーネントクラスから Bean 定義を取得し、コンテキストを自動的にリフレッシュします。AnnotationConfigApplicationContext
(StringSE... basePackages) 新しい AnnotationConfigApplicationContext を作成し、指定されたパッケージ内のコンポーネントをスキャンし、それらのコンポーネントの Bean 定義を登録し、コンテキストを自動的にリフレッシュします。指定された DefaultListableBeanFactory で新しい AnnotationConfigApplicationContext を作成します。メソッドのサマリー
修飾子と型メソッド説明void
処理する 1 つ以上のコンポーネントクラスを登録します。<T> void
registerBean
(StringSE beanName, ClassSE<T> beanClass, SupplierSE<T> supplier, BeanDefinitionCustomizer... customizers) 新しいインスタンス(通常はラムダ式またはメソッド参照として宣言される)を取得するために指定されたサプライヤーを使用して、指定された Bean クラスから Bean を登録し、オプションでその Bean 定義メタデータをカスタマイズします(再び通常ラムダ式として宣言される)。void
指定された基本パッケージ内でスキャンを実行します。void
setBeanNameGenerator
(BeanNameGenerator beanNameGenerator) AnnotatedBeanDefinitionReader
および / またはClassPathBeanDefinitionScanner
で使用するカスタムBeanNameGenerator
を提供します(ある場合)。void
setEnvironment
(ConfigurableEnvironment environment) 指定されたカスタムEnvironment
を基になるAnnotatedBeanDefinitionReader
およびClassPathBeanDefinitionScanner
に伝播します。void
setScopeMetadataResolver
(ScopeMetadataResolver scopeMetadataResolver) 登録されたコンポーネントクラスに使用するScopeMetadataResolver
を設定します。クラス org.springframework.context.support.GenericApplicationContext から継承されたメソッド
cancelRefresh, closeBeanFactory, getAutowireCapableBeanFactory, getBeanDefinition, getBeanFactory, getClassLoader, getDefaultListableBeanFactory, getResource, getResources, isAlias, isBeanDefinitionOverridable, isBeanNameInUse, refreshBeanFactory, refreshForAotProcessing, registerAlias, registerBean, registerBean, registerBean, registerBean, registerBean, registerBeanDefinition, removeAlias, removeBeanDefinition, setAllowBeanDefinitionOverriding, setAllowCircularReferences, setApplicationStartup, setClassLoader, setParent, setResourceLoader
クラス org.springframework.context.support.AbstractApplicationContext から継承されたメソッド
addApplicationListener, addBeanFactoryPostProcessor, assertBeanFactoryActive, clearResourceCaches, 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, isClosed, 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
クラス org.springframework.core.io.DefaultResourceLoader から継承されたメソッド
addProtocolResolver, getProtocolResolvers, getResourceByPath, getResourceCache
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSE
インターフェース org.springframework.core.AliasRegistry から継承されたメソッド
getAliases
インターフェース org.springframework.beans.factory.support.BeanDefinitionRegistry から継承されたメソッド
containsBeanDefinition, getBeanDefinitionCount, getBeanDefinitionNames
インターフェース org.springframework.context.ConfigurableApplicationContext から継承されたメソッド
addProtocolResolver
コンストラクターの詳細
AnnotationConfigApplicationContext
public AnnotationConfigApplicationContext()register(java.lang.Class<?>...)
呼び出しを介してデータを取り込み、手動でリフレッシュする必要がある新しい AnnotationConfigApplicationContext を作成します。AnnotationConfigApplicationContext
指定された DefaultListableBeanFactory で新しい AnnotationConfigApplicationContext を作成します。- パラメーター:
beanFactory
- このコンテキストに使用する DefaultListableBeanFactory インスタンス
AnnotationConfigApplicationContext
新しい AnnotationConfigApplicationContext を作成し、指定されたコンポーネントクラスから Bean 定義を取得し、コンテキストを自動的にリフレッシュします。- パラメーター:
componentClasses
- 1 つ以上のコンポーネントクラス — たとえば、@Configuration
クラス
AnnotationConfigApplicationContext
新しい AnnotationConfigApplicationContext を作成し、指定されたパッケージ内のコンポーネントをスキャンし、それらのコンポーネントの Bean 定義を登録し、コンテキストを自動的にリフレッシュします。- パラメーター:
basePackages
- コンポーネントクラスをスキャンするパッケージ
メソッドの詳細
setEnvironment
指定されたカスタムEnvironment
を基になるAnnotatedBeanDefinitionReader
およびClassPathBeanDefinitionScanner
に伝播します。- 次で指定:
- インターフェース
ConfigurableApplicationContext
のsetEnvironment
- オーバーライド:
- クラス
AbstractApplicationContext
のsetEnvironment
- パラメーター:
environment
- 新しい環境- 関連事項:
setBeanNameGenerator
AnnotatedBeanDefinitionReader
および / またはClassPathBeanDefinitionScanner
で使用するカスタムBeanNameGenerator
を提供します(ある場合)。デフォルトは
AnnotationBeanNameGenerator
です。このメソッドの呼び出しは、
register(Class...)
および / またはscan(String...)
の呼び出しの前に行う必要があります。setScopeMetadataResolver
登録されたコンポーネントクラスに使用するScopeMetadataResolver
を設定します。デフォルトは
AnnotationScopeMetadataResolver
です。このメソッドの呼び出しは、
register(Class...)
および / またはscan(String...)
の呼び出しの前に行う必要があります。register
処理する 1 つ以上のコンポーネントクラスを登録します。コンテキストで新しいクラスを完全に処理するには、
AbstractApplicationContext.refresh()
を呼び出す必要があることに注意してください。- 次で指定:
- インターフェース
AnnotationConfigRegistry
のregister
- パラメーター:
componentClasses
- 1 つ以上のコンポーネントクラス — たとえば、@Configuration
クラス- 関連事項:
scan
指定された基本パッケージ内でスキャンを実行します。コンテキストで新しいクラスを完全に処理するには、
AbstractApplicationContext.refresh()
を呼び出す必要があることに注意してください。- 次で指定:
- インターフェース
AnnotationConfigRegistry
のscan
- パラメーター:
basePackages
- コンポーネントクラスをスキャンするパッケージ- 関連事項:
registerBean
public <T> void registerBean(@Nullable StringSE beanName, ClassSE<T> beanClass, @Nullable SupplierSE<T> supplier, BeanDefinitionCustomizer... customizers) クラスからコピーされた説明:GenericApplicationContext
新しいインスタンス(通常はラムダ式またはメソッド参照として宣言される)を取得するために指定されたサプライヤーを使用して、指定された Bean クラスから Bean を登録し、オプションでその Bean 定義メタデータをカスタマイズします(再び通常ラムダ式として宣言される)。このメソッドをオーバーライドして、すべての
registerBean
メソッドに登録メカニズムを適合させることができます(これらはすべてこのメソッドに委譲されるため)。- オーバーライド:
- クラス
GenericApplicationContext
のregisterBean
- パラメーター:
beanName
- Bean の名前 (null
の場合があります)beanClass
- Bean のクラスsupplier
- Bean のインスタンスを作成するためのコールバック (null
の場合、public コンストラクターを解決して代わりにオートワイヤーする)customizers
- ファクトリのBeanDefinition
をカスタマイズするための 1 つ以上のコールバック (例: lazy-init または primary フラグの設定)