インターフェース ImportBeanDefinitionRegistrar
- すべての既知の実装クラス:
AutoProxyRegistrar
Configuration
クラスを処理するときに追加の Bean 定義を登録する型によって実装されるインターフェース。(@Bean
メソッド / インスタンスレベルではなく)Bean 定義レベルで操作することが望ましい場合や必要な場合に役立ちます。@Configuration
および ImportSelector
とともに、この型のクラスは @Import
アノテーションに提供される場合があります(または ImportSelector
から返される場合もあります)。
ImportBeanDefinitionRegistrar
は次の Aware
インターフェースのいずれかを実装でき、それぞれのメソッドは registerBeanDefinitions(org.springframework.core.type.AnnotationMetadata, org.springframework.beans.factory.support.BeanDefinitionRegistry, org.springframework.beans.factory.support.BeanNameGenerator)
の前に呼び出されます。
または、クラスは、サポートされている次のパラメーター型の 1 つ以上を備えた単一のコンストラクターを提供する場合があります。
使用例については、実装と関連する単体テストを参照してください。
- 導入:
- 3.1
- 作成者:
- Chris Beams, Juergen Hoeller
- 関連事項:
メソッドのサマリー
修飾子と型メソッド説明default void
registerBeanDefinitions
(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) インポートする@Configuration
クラスの特定のアノテーションメタデータに基づいて、必要に応じて Bean 定義を登録します。default void
registerBeanDefinitions
(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry, BeanNameGenerator importBeanNameGenerator) インポートする@Configuration
クラスの特定のアノテーションメタデータに基づいて、必要に応じて Bean 定義を登録します。
メソッドの詳細
registerBeanDefinitions
default void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry, BeanNameGenerator importBeanNameGenerator) インポートする@Configuration
クラスの特定のアノテーションメタデータに基づいて、必要に応じて Bean 定義を登録します。@Configuration
クラスの処理に関連するライフサイクルの制約により、BeanDefinitionRegistryPostProcessor
型はここに登録されない場合があることに注意してください。デフォルトの実装は
registerBeanDefinitions(AnnotationMetadata, BeanDefinitionRegistry)
に委譲します。- パラメーター:
importingClassMetadata
- インポートするクラスのアノテーションメタデータregistry
- 現在の Bean 定義レジストリimportBeanNameGenerator
- インポートされた Bean の Bean 名前ジェネレーター戦略: デフォルトではConfigurationClassPostProcessor.IMPORT_BEAN_NAME_GENERATOR
、またはConfigurationClassPostProcessor.setBeanNameGenerator(org.springframework.beans.factory.support.BeanNameGenerator)
が設定されている場合はユーザー指定の Bean。後者の場合、渡される戦略は、含まれているアプリケーションコンテキストでのコンポーネントスキャンに使用されるものと同じになります(それ以外の場合、デフォルトのコンポーネントスキャンの命名戦略はAnnotationBeanNameGenerator.INSTANCE
です)。- 導入:
- 5.2
- 関連事項:
registerBeanDefinitions
default void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) インポートする@Configuration
クラスの特定のアノテーションメタデータに基づいて、必要に応じて Bean 定義を登録します。@Configuration
クラスの処理に関連するライフサイクルの制約により、BeanDefinitionRegistryPostProcessor
型はここに登録されない場合があることに注意してください。デフォルトの実装は空です。
- パラメーター:
importingClassMetadata
- インポートするクラスのアノテーションメタデータregistry
- 現在の Bean 定義レジストリ