インターフェース BeanDefinition

すべてのスーパーインターフェース:
AttributeAccessor, BeanMetadataElement
既知のすべてのサブインターフェース:
AnnotatedBeanDefinition
すべての既知の実装クラス:
AbstractBeanDefinition, AnnotatedGenericBeanDefinition, ChildBeanDefinition, GenericBeanDefinition, RootBeanDefinition, ScannedGenericBeanDefinition

public interface BeanDefinition extends AttributeAccessor, BeanMetadataElement
BeanDefinition は、Bean インスタンスを記述します。インスタンスには、プロパティ値、コンストラクター引数値、具体的な実装によって提供される詳細情報があります。

これは最小限のインターフェースです。主な目的は、BeanFactoryPostProcessor がプロパティ値やその他の Bean メタデータをイントロスペクトおよび変更できるようにすることです。

導入:
19.03.2004
作成者:
Juergen Hoeller, Rob Harrop
関連事項:
  • フィールドの詳細

    • SCOPE_SINGLETON

      static final StringSE SCOPE_SINGLETON
      標準のシングルトンスコープのスコープ識別子: 「シングルトン」。

      拡張 Bean ファクトリは、さらにスコープをサポートする可能性があることに注意してください。

      関連事項:
    • SCOPE_PROTOTYPE

      static final StringSE SCOPE_PROTOTYPE
      標準プロトタイプスコープのスコープ識別子: 「プロトタイプ」。

      拡張 Bean ファクトリは、さらにスコープをサポートする可能性があることに注意してください。

      関連事項:
    • ROLE_APPLICATION

      static final int ROLE_APPLICATION
      BeanDefinition がアプリケーションの主要な部分であることを示すロールのヒント。通常、ユーザー定義の Bean に対応します。
      関連事項:
    • ROLE_SUPPORT

      static final int ROLE_SUPPORT
      BeanDefinition がいくつかのより大きな構成(通常は外側の ComponentDefinition)のサポート部分であることを示すロールのヒント。SUPPORT Bean は、特定の ComponentDefinition をより詳細に見るときに認識できるほど重要であると考えられていますが、アプリケーションの全体的な構成を調べるときはそうではありません。
      関連事項:
    • ROLE_INFRASTRUCTURE

      static final int ROLE_INFRASTRUCTURE
      BeanDefinition が完全にバックグラウンドのロールを提供しており、エンドユーザーとは無関係であることを示すロールのヒント。このヒントは、ComponentDefinition の内部動作の一部である Bean を登録するときに使用されます。
      関連事項:
  • 方法の詳細

    • setParentName

      void setParentName(@Nullable StringSE parentName)
      この Bean 定義の親定義の名前を設定します(ある場合)。
    • getParentName

      @Nullable StringSE getParentName()
      この Bean 定義の親定義の名前を返します(ある場合)。
    • setBeanClassName

      void setBeanClassName(@Nullable StringSE beanClassName)
      この Bean 定義の Bean クラス名を指定します。

      クラス名は、Bean ファクトリの後処理中に変更できます。通常、元のクラス名は、解析されたバリアントに置き換えられます。

      関連事項:
    • getBeanClassName

      @Nullable StringSE getBeanClassName()
      この Bean 定義の現在の Bean クラス名を返します。

      子定義が親からクラス名をオーバーライド / 継承する場合、これは実行時に使用される実際のクラス名である必要はないことに注意してください。また、これはファクトリメソッドが呼び出されたクラスの場合もあれば、メソッドが呼び出されたファクトリ Bean 参照の場合は空の場合もあります。これを実行時の最終的な Bean 型とは見なさ、個々の Bean 定義レベルでの解析目的にのみ使用してください。

      関連事項:
    • setScope

      void setScope(@Nullable StringSE scope)
      新しい Bean のターゲットスコープをオーバーライドし、新しいスコープ名を指定します。
      関連事項:
    • getScope

      @Nullable StringSE getScope()
      この Bean の現在のターゲットスコープの名前、またはまだ知られていない場合は null を返します。
    • setLazyInit

      void setLazyInit(boolean lazyInit)
      この Bean を遅延初期化するかどうかを設定します。

      false の場合、Bean は起動時にシングルトンの先行初期化を実行する Bean ファクトリによってインスタンス化されます。

    • isLazyInit

      boolean isLazyInit()
      この Bean を遅延初期化する必要があるかどうか、つまり、起動時に積極的にインスタンス化しないかどうかを返します。シングルトン Bean にのみ適用されます。
    • setDependsOn

      void setDependsOn(StringSE @Nullable ... dependsOn)
      この Bean が初期化されることに依存する Bean の名前を設定します。Bean ファクトリは、これらの Bean が最初に初期化されることを保証します。

      依存関係は通常、Bean プロパティまたはコンストラクター引数によって表現されることに注意してください。このプロパティは、静的(* ugh *)や起動時のデータベースの準備など、他の種類の依存関係にのみ必要です。

    • getDependsOn

      StringSE @Nullable [] getDependsOn()
      この Bean が依存する Bean 名を返します。
    • setAutowireCandidate

      void setAutowireCandidate(boolean autowireCandidate)
      この Bean が他の Bean にオートワイヤーされる候補であるかどうかを設定します。

      このフラグは、型ベースのオートワイヤーにのみ影響するように設計されていることに注意してください。名前による明示的な参照には影響しません。指定された Bean がオートワイヤー候補としてマークされていなくても解決されます。結果として、名前によるオートワイヤーでは、名前が一致する場合でも Bean が挿入されます。

    • isAutowireCandidate

      boolean isAutowireCandidate()
      この Bean が他の Bean にオートワイヤーされる候補であるかどうかを返します。
    • setPrimary

      void setPrimary(boolean primary)
      この Bean がプライマリオートワイヤー候補かどうかを設定します。

      複数の一致する候補の中の 1 つの Bean に対してこの値が true である場合、タイブレーカーとして機能します。

      関連事項:
    • isPrimary

      boolean isPrimary()
      この Bean がプライマリオートワイヤ候補であるかどうかを返します。
    • setFallback

      void setFallback(boolean fallback)
      この Bean がフォールバックオートワイヤー候補であるかどうかを設定します。

      複数の一致する候補のうち 1 つを除くすべての Bean に対してこの値が true である場合、残りの Bean が選択されます。

      導入:
      6.2
      関連事項:
    • isFallback

      boolean isFallback()
      この Bean がフォールバックオートワイヤ候補であるかどうかを返します。
      導入:
      6.2
    • setFactoryBeanName

      void setFactoryBeanName(@Nullable StringSE factoryBeanName)
      使用するファクトリ Bean を指定します (存在する場合)。これは、指定されたファクトリメソッドを呼び出す Bean の名前です。

      ファクトリ Bean 名は、インスタンスベースのファクトリメソッドにのみ必要です。静的ファクトリメソッドの場合、メソッドは Bean クラスから派生されます。

      関連事項:
    • getFactoryBeanName

      @Nullable StringSE getFactoryBeanName()
      存在する場合は、ファクトリ Bean 名を返します。

      代わりに、Bean クラスから派生される静的ファクトリメソッドの場合は、null になります。

      関連事項:
    • setFactoryMethodName

      void setFactoryMethodName(@Nullable StringSE factoryMethodName)
      存在する場合は、ファクトリメソッドを指定します。このメソッドは、コンストラクター引数を指定して呼び出されるか、何も指定されていない場合は引数なしで呼び出されます。このメソッドは、指定されたファクトリ Bean(存在する場合)、またはローカル Bean クラスの静的メソッドとして呼び出されます。
      関連事項:
    • getFactoryMethodName

      @Nullable StringSE getFactoryMethodName()
      存在する場合は、ファクトリメソッドを返します。
      関連事項:
    • getConstructorArgumentValues

      ConstructorArgumentValues getConstructorArgumentValues()
      この Bean のコンストラクター引数値を返します。

      返されたインスタンスは、Bean ファクトリの後処理中に変更できます。

      戻り値:
      ConstructorArgumentValues オブジェクト (決して null ではない)
    • hasConstructorArgumentValues

      default boolean hasConstructorArgumentValues()
      この Bean に定義されたコンストラクター引数値がある場合に返します。
      導入:
      5.0.2
      関連事項:
    • getPropertyValues

      MutablePropertyValues getPropertyValues()
      Bean の新しいインスタンスに適用されるプロパティ値を返します。

      返されたインスタンスは、Bean ファクトリの後処理中に変更できます。

      戻り値:
      MutablePropertyValues オブジェクト (決して null ではない)
    • hasPropertyValues

      default boolean hasPropertyValues()
      この Bean に定義されたプロパティ値があるかどうかを返します。
      導入:
      5.0.2
      関連事項:
    • setInitMethodName

      void setInitMethodName(@Nullable StringSE initMethodName)
      初期化メソッドの名前を設定します。
      導入:
      5.1
    • getInitMethodName

      @Nullable StringSE getInitMethodName()
      初期化メソッドの名前を返します。
      導入:
      5.1
    • setDestroyMethodName

      void setDestroyMethodName(@Nullable StringSE destroyMethodName)
      destroy メソッドの名前を設定します。
      導入:
      5.1
    • getDestroyMethodName

      @Nullable StringSE getDestroyMethodName()
      destroy メソッドの名前を返します。
      導入:
      5.1
    • setRole

      void setRole(int role)
      この BeanDefinition のロールヒントを設定します。ロールのヒントは、特定の BeanDefinition のロールと重要性を示すフレームワークとツールを提供します。
      導入:
      5.1
      関連事項:
    • getRole

      int getRole()
      この BeanDefinition のロールのヒントを取得します。ロールのヒントは、特定の BeanDefinition のロールと重要性を示すフレームワークとツールを提供します。
      関連事項:
    • setDescription

      void setDescription(@Nullable StringSE description)
      この Bean 定義の人間が読み取れる説明を設定します。
      導入:
      5.1
    • getDescription

      @Nullable StringSE getDescription()
      この Bean 定義の人間が読み取れる説明を返します。
    • getResolvableType

      ResolvableType getResolvableType()
      Bean クラスまたは他の特定のメタデータに基づいて、この Bean 定義の解決可能な型を返します。

      これは通常、ランタイムにマージされた Bean 定義で完全に解決されますが、構成時の定義インスタンスでは必ずしも解決されません。

      戻り値:
      解決可能な型 (潜在的に ResolvableType.NONE )
      導入:
      5.2
      関連事項:
    • isSingleton

      boolean isSingleton()
      これが Singleton で、すべての呼び出しで単一の共有インスタンスが返されたかどうかを返します。
      関連事項:
    • isPrototype

      boolean isPrototype()
      これが Prototype であるかどうかを返します。呼び出しごとに独立したインスタンスが返されます。
      導入:
      3.0
      関連事項:
    • isAbstract

      boolean isAbstract()
      この Bean が「抽象的」であるかどうか、つまり、それ自体がインスタンス化されることを意図しておらず、具体的な子 Bean 定義の親として機能するだけであるかどうかを返します。
    • getResourceDescription

      @Nullable StringSE getResourceDescription()
      この Bean 定義の元となったリソースの説明を返します(エラーの場合にコンテキストを表示するため)。
    • getOriginatingBeanDefinition

      @Nullable BeanDefinition getOriginatingBeanDefinition()
      元の BeanDefinition を返すか、存在しない場合は null を返します。

      装飾された Bean 定義があれば、それを取得することができます。

      このメソッドは直接の呼び出し元を返すことに注意してください。オリジネーターチェーンを反復処理して、ユーザーが定義した元の BeanDefinition を見つけます。