インターフェース 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 voidregisterBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) インポートする@Configurationクラスの特定のアノテーションメタデータに基づいて、必要に応じて Bean 定義を登録します。default voidregisterBeanDefinitions(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 定義レジストリ