インターフェース SmartFactoryBean<T>
- 型パラメーター:
T
- Bean 型
- すべてのスーパーインターフェース:
FactoryBean<T>
FactoryBean
インターフェースの拡張。false
を返す FactoryBean.isSingleton()
実装が独立したインスタンスを明確に示さない場合のために、実装は常に独立したインスタンスを返すかどうかを示す場合があります。 この拡張インターフェースを実装しないプレーンな FactoryBean
実装は、FactoryBean.isSingleton()
実装が false
を返す場合、常に独立したインスタンスを返すと単純に想定されています。公開されたオブジェクトは、オンデマンドでのみアクセスされます。
注意 : このインターフェースは、主にフレームワーク内およびコラボレーションフレームワーク内での内部使用のための特別な目的のインターフェースです。一般に、アプリケーションが提供する FactoryBeans は、単純な FactoryBean
インターフェースを実装するだけです。ポイントリリースでも、この拡張インターフェースに新しいメソッドが追加される場合があります。
- 導入:
- 2.0.3
- 作成者:
- Juergen Hoeller
- 関連事項:
フィールドサマリー
インターフェース org.springframework.beans.factory.FactoryBean から継承されたフィールド
OBJECT_TYPE_ATTRIBUTE
メソッドのサマリー
修飾子と型メソッド説明default boolean
この FactoryBean は先行初期化を期待していますか? つまり、それ自体を先行初期化すると同時に、そのシングルトンオブジェクト(存在する場合)の先行初期化を期待していますか?default boolean
このファクトリによって管理されるオブジェクトはプロトタイプですか? つまり、FactoryBean.getObject()
は常に独立したインスタンスを返しますか?インターフェース org.springframework.beans.factory.FactoryBean から継承されたメソッド
getObject, getObjectType, isSingleton
メソッドの詳細
isPrototype
default boolean isPrototype()このファクトリによって管理されるオブジェクトはプロトタイプですか? つまり、FactoryBean.getObject()
は常に独立したインスタンスを返しますか?FactoryBean 自体のプロトタイプステータスは、通常、所有する
BeanFactory
によって提供されます。通常は、シングルトンとして定義する必要があります。このメソッドは、独立したインスタンスを厳密にチェックすることになっています。スコープオブジェクトまたは他の種類の非シングルトン、非独立オブジェクトの
true
を返しません。このため、これは単にFactoryBean.isSingleton()
の反転形式ではありません。デフォルトの実装は
false
を返します。- 戻り値:
- 公開されたオブジェクトがプロトタイプかどうか
- 関連事項:
isEagerInit
default boolean isEagerInit()この FactoryBean は先行初期化を期待していますか? つまり、それ自体を先行初期化すると同時に、そのシングルトンオブジェクト(存在する場合)の先行初期化を期待していますか?標準の FactoryBean は先行初期化されることは期待されていません。その
FactoryBean.getObject()
は、シングルトンオブジェクトの場合でも、実際のアクセスのためにのみ呼び出されます。このメソッドからtrue
を返すことは、FactoryBean.getObject()
を積極的に呼び出し、ポストプロセッサーを積極的に適用する必要があることを提案しています。これは、singleton
オブジェクトの場合、特に起動時にポストプロセッサーが適用されることを期待している場合に意味があります。デフォルトの実装は
false
を返します。- 戻り値:
- 先行初期化が適用されるかどうか
- 関連事項: