インターフェース BeanDefinitionRegistry

すべてのスーパーインターフェース:
AliasRegistry
すべての既知の実装クラス:
AnnotationConfigApplicationContextDefaultListableBeanFactoryGenericApplicationContextGenericGroovyApplicationContextGenericWebApplicationContextGenericXmlApplicationContextSimpleBeanDefinitionRegistryStaticApplicationContextStaticWebApplicationContext

public interface BeanDefinitionRegistry extends AliasRegistry
RootBeanDefinition および ChildBeanDefinition インスタンスなど、Bean 定義を保持するレジストリのインターフェース。通常、AbstractBeanDefinition 階層で内部的に動作する BeanFactories によって実装されます。

これは、Bean 定義の登録をカプセル化する Spring の Bean ファクトリパッケージの唯一のインターフェースです。標準の BeanFactory インターフェースは、 完全に構成されたファクトリインスタンスへのアクセスのみをカバーします

Spring の Bean 定義リーダーは、このインターフェースの実装に取り組むことを期待しています。Spring コア内の既知の実装者は、DefaultListableBeanFactory および GenericApplicationContext です。

導入:
26.11.2003
作成者:
Juergen Hoeller
関連事項:
  • メソッドの詳細

    • registerBeanDefinition

      void registerBeanDefinition(StringSE beanName, BeanDefinition beanDefinition) throws BeanDefinitionStoreException
      このレジストリに新しい Bean 定義を登録します。RootBeanDefinition および ChildBeanDefinition をサポートする必要があります。
      パラメーター:
      beanName - 登録する Bean インスタンスの名前
      beanDefinition - 登録する Bean インスタンスの定義
      例外:
      BeanDefinitionStoreException - BeanDefinition が無効な場合
      BeanDefinitionOverrideException - 指定された Bean 名の BeanDefinition がすでに存在し、それをオーバーライドすることが許可されていない場合
      関連事項:
    • removeBeanDefinition

      void removeBeanDefinition(StringSE beanName) throws NoSuchBeanDefinitionException
      指定された名前の BeanDefinition を削除します。
      パラメーター:
      beanName - 登録する Bean インスタンスの名前
      例外:
      NoSuchBeanDefinitionException - そのような Bean 定義がない場合
    • getBeanDefinition

      BeanDefinition getBeanDefinition(StringSE beanName) throws NoSuchBeanDefinitionException
      指定された Bean 名の BeanDefinition を返します。
      パラメーター:
      beanName - 定義を検索する Bean の名前
      戻り値:
      指定された名前の BeanDefinition (非 null)
      例外:
      NoSuchBeanDefinitionException - そのような Bean 定義がない場合
    • containsBeanDefinition

      boolean containsBeanDefinition(StringSE beanName)
      このレジストリに、指定された名前の Bean 定義が含まれているかどうかを確認します。
      パラメーター:
      beanName - 検索する Bean の名前
      戻り値:
      このレジストリに、指定された名前の Bean 定義が含まれている場合
    • getBeanDefinitionNames

      StringSE[] getBeanDefinitionNames()
      このレジストリで定義されているすべての Bean の名前を返します。
      戻り値:
      このレジストリで定義されているすべての Bean の名前。定義されていない場合は空の配列
    • getBeanDefinitionCount

      int getBeanDefinitionCount()
      レジストリで定義されている Bean の数を返します。
      戻り値:
      レジストリで定義されている Bean の数
    • isBeanDefinitionOverridable

      default boolean isBeanDefinitionOverridable(StringSE beanName)
      指定された名前の Bean 定義がオーバーライド可能かどうか、つまり、registerBeanDefinition(java.lang.String, org.springframework.beans.factory.config.BeanDefinition) が同じ名前の既存の定義に対して正常に返されるかどうかを判断します。

      デフォルトの実装は true を返します。

      パラメーター:
      beanName - チェックする名前
      戻り値:
      指定された Bean 名の定義がオーバーライド可能かどうか
      導入:
      6.1
    • isBeanNameInUse

      boolean isBeanNameInUse(StringSE beanName)
      指定された Bean 名がこのレジストリ内ですでに使用されているかどうか、つまり、この名前でローカル Bean またはエイリアスが登録されているかどうかを確認します。
      パラメーター:
      beanName - チェックする名前
      戻り値:
      指定された Bean 名がすでに使用されているかどうか