public interface ImportBeanDefinitionRegistrarConfiguration クラスを処理するときに追加の 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 つ以上を備えた単一のコンストラクターを提供する場合があります。
使用例については、実装と関連する単体テストを参照してください。
Import, ImportSelector, Configuration| 修飾子と型 | メソッドと説明 |
|---|---|
default void | registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) インポートする @Configuration クラスの特定のアノテーションメタデータに基づいて、必要に応じて Bean 定義を登録します。 |
default void | registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry, BeanNameGenerator importBeanNameGenerator) インポートする @Configuration クラスの特定のアノテーションメタデータに基づいて、必要に応じて Bean 定義を登録します。 |
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 です)。ConfigurationClassPostProcessor.IMPORT_BEAN_NAME_GENERATOR, ConfigurationClassPostProcessor.setBeanNameGenerator(org.springframework.beans.factory.support.BeanNameGenerator)default void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry)
@Configuration クラスの特定のアノテーションメタデータに基づいて、必要に応じて Bean 定義を登録します。@Configuration クラスの処理に関連するライフサイクルの制約により、BeanDefinitionRegistryPostProcessor 型はここに登録されない場合があることに注意してください。
デフォルトの実装は空です。
importingClassMetadata - インポートするクラスのアノテーションメタデータ registry - 現在の Bean 定義レジストリ