public class AnnotationConfigApplicationContext extends GenericApplicationContext implements AnnotationConfigRegistry
@Configuration アノテーション付きクラスだけでなく、プレーンな @Component 型および javax.inject アノテーションを使用する JSR-330 準拠クラスも受け入れます。register(Class...) を使用してクラスを 1 つずつ登録することも、scan(String...) を使用してクラスパスをスキャンすることもできます。 複数の @Configuration クラスの場合、後のクラスで定義された @Bean メソッドは、前のクラスで定義されたメソッドをオーバーライドします。これを活用して、追加の @Configuration クラスを介して特定の Bean 定義を意図的にオーバーライドできます。
使用例については、@Configuration の javadoc を参照してください。
register(java.lang.Class<?>...), scan(java.lang.String...), AnnotatedBeanDefinitionReader, ClassPathBeanDefinitionScanner, GenericXmlApplicationContextDefaultResourceLoader.ClassPathContextResourceAPPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAMECONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, ENVIRONMENT_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_BEAN_NAMEFACTORY_BEAN_PREFIXCLASSPATH_ALL_URL_PREFIXCLASSPATH_URL_PREFIX| コンストラクターと説明 |
|---|
AnnotationConfigApplicationContext()register(java.lang.Class<?>...) 呼び出しを介してデータを取り込み、手動でリフレッシュする必要がある新しい AnnotationConfigApplicationContext を作成します。 |
AnnotationConfigApplicationContext(ClassSE<?>... annotatedClasses) 新しい AnnotationConfigApplicationContext を作成し、指定されたアノテーション付きクラスから Bean 定義を派生させ、コンテキストを自動的にリフレッシュします。 |
AnnotationConfigApplicationContext(DefaultListableBeanFactory beanFactory) 指定された DefaultListableBeanFactory で新しい AnnotationConfigApplicationContext を作成します。 |
AnnotationConfigApplicationContext(StringSE... basePackages) 新しい AnnotationConfigApplicationContext を作成し、指定されたパッケージの Bean 定義をスキャンして、コンテキストを自動的にリフレッシュします。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
void | register(ClassSE<?>... annotatedClasses) 処理する 1 つ以上のアノテーション付きクラスを登録します。 |
<T> void | registerBean(ClassSE<T> annotatedClass, ObjectSE... constructorArguments) 指定された Bean クラスから Bean を登録し、クラス宣言されたアノテーションからそのメタデータを導出し、オプションで、オートワイヤープロセスでの検討のために明示的なコンストラクター引数を提供します。 |
<T> void | registerBean(StringSE beanName, ClassSE<T> annotatedClass, ObjectSE... constructorArguments) 指定された Bean クラスから Bean を登録し、クラス宣言されたアノテーションからそのメタデータを導出し、オプションで、オートワイヤープロセスでの検討のために明示的なコンストラクター引数を提供します。 |
<T> void | registerBean(StringSE beanName, ClassSE<T> beanClass, SupplierSE<T> supplier, BeanDefinitionCustomizer... customizers) 新しいインスタンス(通常はラムダ式またはメソッド参照として宣言)を取得するために指定されたサプライヤーを使用して、指定された Bean クラスから Bean を登録し、オプションでその Bean 定義メタデータをカスタマイズします(これも通常、ラムダ式またはメソッド参照として宣言されます)。 |
void | scan(StringSE... basePackages) 指定された基本パッケージ内でスキャンを実行します。 |
void | setBeanNameGenerator(BeanNameGenerator beanNameGenerator)AnnotatedBeanDefinitionReader および / または ClassPathBeanDefinitionScanner で使用するカスタム BeanNameGenerator を提供します(ある場合)。 |
void | setEnvironment(ConfigurableEnvironment environment) このアプリケーションコンテキストの Environment を設定します。 |
void | setScopeMetadataResolver(ScopeMetadataResolver scopeMetadataResolver) 検出された Bean クラスに使用する ScopeMetadataResolver を設定します。 |
cancelRefresh, closeBeanFactory, getAutowireCapableBeanFactory, getBeanDefinition, getBeanFactory, getClassLoader, getDefaultListableBeanFactory, getResource, getResources, isAlias, isBeanNameInUse, refreshBeanFactory, registerAlias, registerBean, registerBean, registerBean, registerBeanDefinition, removeAlias, removeBeanDefinition, setAllowBeanDefinitionOverriding, setAllowCircularReferences, setClassLoader, setId, setParent, setResourceLoaderaddApplicationListener, addBeanFactoryPostProcessor, assertBeanFactoryActive, close, containsBean, containsBeanDefinition, containsLocalBean, createEnvironment, destroy, destroyBeans, doClose, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getApplicationName, getBean, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getEnvironment, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getResourcePatternResolver, getStartupDate, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, initPropertySources, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, isTypeMatch, obtainFreshBeanFactory, onClose, onRefresh, postProcessBeanFactory, prepareBeanFactory, prepareRefresh, publishEvent, publishEvent, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, resetCommonCaches, setDisplayName, start, stop, toStringaddProtocolResolver, clearResourceCaches, getProtocolResolvers, getResourceByPath, getResourceCachecloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSEcontainsBeanDefinition, getBeanDefinitionCount, getBeanDefinitionNamesgetAliasesaddProtocolResolverpublic AnnotationConfigApplicationContext()
register(java.lang.Class<?>...) 呼び出しを介してデータを取り込み、手動でリフレッシュする必要がある新しい AnnotationConfigApplicationContext を作成します。public AnnotationConfigApplicationContext(DefaultListableBeanFactory beanFactory)
beanFactory - このコンテキストに使用する DefaultListableBeanFactory インスタンス public AnnotationConfigApplicationContext(ClassSE<?>... annotatedClasses)
annotatedClasses - 1 つまたは複数のアノテーション付きクラス、たとえば @Configuration クラス public AnnotationConfigApplicationContext(StringSE... basePackages)
basePackages - アノテーション付きクラスを確認するパッケージ public void setEnvironment(ConfigurableEnvironment environment)
Environment を設定します。 デフォルト値は AbstractApplicationContext.createEnvironment() によって決定されます。この方法でデフォルトを置き換えることは 1 つのオプションですが、AbstractApplicationContext.getEnvironment() による構成も検討する必要があります。どちらの場合も、そのような変更は AbstractApplicationContext.refresh() の前に実行する必要があります。
指定された環境を、基礎となる AnnotatedBeanDefinitionReader および ClassPathBeanDefinitionScanner メンバーに委譲します。
ConfigurableApplicationContext の setEnvironment AbstractApplicationContext の setEnvironment environment - 新しい環境 AbstractApplicationContext.createEnvironment()public void setBeanNameGenerator(BeanNameGenerator beanNameGenerator)
AnnotatedBeanDefinitionReader および / または ClassPathBeanDefinitionScanner で使用するカスタム BeanNameGenerator を提供します(ある場合)。 デフォルトは AnnotationBeanNameGenerator です。
このメソッドの呼び出しは、register(Class...) および / または scan(String...) の呼び出しの前に行う必要があります。
public void setScopeMetadataResolver(ScopeMetadataResolver scopeMetadataResolver)
ScopeMetadataResolver を設定します。 デフォルトは AnnotationScopeMetadataResolver です。
このメソッドの呼び出しは、register(Class...) および / または scan(String...) の呼び出しの前に行う必要があります。
public void register(ClassSE<?>... annotatedClasses)
コンテキストで新しいクラスを完全に処理するには、AbstractApplicationContext.refresh() を呼び出す必要があることに注意してください。
AnnotationConfigRegistry の register annotatedClasses - 1 つまたは複数のアノテーション付きクラス、たとえば @Configuration クラス scan(String...), AbstractApplicationContext.refresh()public void scan(StringSE... basePackages)
コンテキストで新しいクラスを完全に処理するには、AbstractApplicationContext.refresh() を呼び出す必要があることに注意してください。
AnnotationConfigRegistry の scan basePackages - アノテーション付きクラスを確認するパッケージ register(Class...), AbstractApplicationContext.refresh()public <T> void registerBean(ClassSE<T> annotatedClass, ObjectSE... constructorArguments)
Bean 名は、アノテーション付きのコンポーネントルールに従って生成されます。
annotatedClass - Bean のクラス constructorArguments - Spring のコンストラクター解決アルゴリズムに入力される引数値。すべての引数または特定の引数のみを解決し、残りは通常のオートワイヤーによって解決されます。(null または空の場合があります)public <T> void registerBean(@Nullable StringSE beanName, ClassSE<T> annotatedClass, ObjectSE... constructorArguments)
beanName - Bean の名前 (null の場合があります)annotatedClass - Bean のクラス constructorArguments - Spring のコンストラクター解決アルゴリズムに入力される引数値。すべての引数または特定の引数のみを解決し、残りは通常のオートワイヤーによって解決されます。(null または空の場合があります)public <T> void registerBean(@Nullable StringSE beanName, ClassSE<T> beanClass, @Nullable SupplierSE<T> supplier, BeanDefinitionCustomizer... customizers)
GenericApplicationContext このメソッドをオーバーライドして、すべての registerBean メソッドに登録メカニズムを適合させることができます(これらはすべてこのメソッドに委譲されるため)。
GenericApplicationContext の registerBean beanName - Bean の名前 (null の場合があります)beanClass - Bean のクラス (名前が指定されている場合、null になる場合があります)supplier - Bean のインスタンスを作成するためのコールバック customizers - ファクトリの BeanDefinition をカスタマイズするための 1 つ以上のコールバック。lazy-init またはプライマリフラグの設定