インターフェース BeanDefinitionRegistry
- すべてのスーパーインターフェース:
AliasRegistry
- すべての既知の実装クラス:
AnnotationConfigApplicationContext
、DefaultListableBeanFactory
、GenericApplicationContext
、GenericGroovyApplicationContext
、GenericWebApplicationContext
、GenericXmlApplicationContext
、SimpleBeanDefinitionRegistry
、StaticApplicationContext
、StaticWebApplicationContext
RootBeanDefinition および ChildBeanDefinition インスタンスなど、Bean 定義を保持するレジストリのインターフェース。通常、AbstractBeanDefinition 階層で内部的に動作する BeanFactories によって実装されます。
これは、Bean 定義の登録をカプセル化する Spring の Bean ファクトリパッケージの唯一のインターフェースです。標準の BeanFactory インターフェースは、 完全に構成されたファクトリインスタンスへのアクセスのみをカバーします。
Spring の Bean 定義リーダーは、このインターフェースの実装に取り組むことを期待しています。Spring コア内の既知の実装者は、DefaultListableBeanFactory および GenericApplicationContext です。
メソッドのサマリー
修飾子と型メソッド説明boolean
containsBeanDefinition
(StringSE beanName) このレジストリに、指定された名前の Bean 定義が含まれているかどうかを確認します。getBeanDefinition
(StringSE beanName) 指定された Bean 名の BeanDefinition を返します。int
レジストリで定義されている Bean の数を返します。StringSE[]
このレジストリで定義されているすべての Bean の名前を返します。default boolean
isBeanDefinitionOverridable
(StringSE beanName) 指定された名前の Bean 定義がオーバーライド可能かどうかを判断します。boolean
isBeanNameInUse
(StringSE beanName) 指定された Bean 名がこのレジストリ内ですでに使用されているかどうか、つまりvoid
registerBeanDefinition
(StringSE beanName, BeanDefinition beanDefinition) このレジストリに新しい Bean 定義を登録します。void
removeBeanDefinition
(StringSE beanName) 指定された名前の BeanDefinition を削除します。インターフェース org.springframework.core.AliasRegistry から継承されたメソッド
getAliases, isAlias, registerAlias, removeAlias
メソッドの詳細
registerBeanDefinition
void registerBeanDefinition(StringSE beanName, BeanDefinition beanDefinition) throws BeanDefinitionStoreException このレジストリに新しい Bean 定義を登録します。RootBeanDefinition および ChildBeanDefinition をサポートする必要があります。- パラメーター:
beanName
- 登録する Bean インスタンスの名前beanDefinition
- 登録する Bean インスタンスの定義- 例外:
BeanDefinitionStoreException
- BeanDefinition が無効な場合BeanDefinitionOverrideException
- 指定された Bean 名の BeanDefinition がすでに存在し、それをオーバーライドすることが許可されていない場合- 関連事項:
removeBeanDefinition
指定された名前の BeanDefinition を削除します。- パラメーター:
beanName
- 登録する Bean インスタンスの名前- 例外:
NoSuchBeanDefinitionException
- そのような Bean 定義がない場合
getBeanDefinition
指定された Bean 名の BeanDefinition を返します。- パラメーター:
beanName
- 定義を検索する Bean の名前- 戻り値:
- 指定された名前の BeanDefinition (非
null
) - 例外:
NoSuchBeanDefinitionException
- そのような Bean 定義がない場合
containsBeanDefinition
このレジストリに、指定された名前の Bean 定義が含まれているかどうかを確認します。- パラメーター:
beanName
- 検索する Bean の名前- 戻り値:
- このレジストリに、指定された名前の Bean 定義が含まれている場合
getBeanDefinitionNames
StringSE[] getBeanDefinitionNames()このレジストリで定義されているすべての Bean の名前を返します。- 戻り値:
- このレジストリで定義されているすべての Bean の名前。定義されていない場合は空の配列
getBeanDefinitionCount
int getBeanDefinitionCount()レジストリで定義されている Bean の数を返します。- 戻り値:
- レジストリで定義されている Bean の数
isBeanDefinitionOverridable
指定された名前の Bean 定義がオーバーライド可能かどうか、つまり、registerBeanDefinition(java.lang.String, org.springframework.beans.factory.config.BeanDefinition)
が同じ名前の既存の定義に対して正常に返されるかどうかを判断します。デフォルトの実装は
true
を返します。- パラメーター:
beanName
- チェックする名前- 戻り値:
- 指定された Bean 名の定義がオーバーライド可能かどうか
- 導入:
- 6.1
isBeanNameInUse
指定された Bean 名がこのレジストリ内ですでに使用されているかどうか、つまり、この名前でローカル Bean またはエイリアスが登録されているかどうかを確認します。- パラメーター:
beanName
- チェックする名前- 戻り値:
- 指定された Bean 名がすでに使用されているかどうか