アノテーションインターフェース Scope
@Component と組み合わせて型レベルのアノテーションとして使用する場合、@Scope はアノテーション付きの型のインスタンスに使用するスコープの名前を示します。@Bean と共にメソッドレベルのアノテーションとして使用される場合、@Scope は、メソッドから返されるインスタンスに使用するスコープの名前を示します。
注意 : @Scope アノテーションは、具体的な Bean クラス(アノテーション付きコンポーネントの場合)またはファクトリメソッド(@Bean メソッドの場合)でのみイントロスペクトされます。XML Bean 定義とは対照的に、Bean 定義の継承という概念はなく、クラスレベルの継承階層はメタデータの目的には関係ありません。
このコンテキストでは、スコープとは、singleton、prototype などのインスタンスのライフサイクルを意味します。Spring ですぐに提供されるスコープは、ConfigurableBeanFactory および WebApplicationContext インターフェースで使用可能な SCOPE_* 定数を使用して参照できます。
追加のカスタムスコープを登録するには、CustomScopeConfigurer を参照してください。
オプション要素の概要
オプション要素修飾子と型オプションの要素説明コンポーネントをスコープ付きプロキシとして構成する必要があるかどうかを指定します。構成する場合は、プロキシをインターフェースベースにするかサブクラスベースにするかを指定します。アノテーション付きコンポーネント / Bean に使用するスコープの名前を指定します。scopeName()のエイリアス。
要素の詳細
value
scopeName()のエイリアス。- 関連事項:
- デフォルト:
- ""
scopeName
アノテーション付きコンポーネント / Bean に使用するスコープの名前を指定します。デフォルトは、
SCOPE_SINGLETONを意味する空の文字列("")です。- 導入:
- 4.2
- 関連事項:
- デフォルト:
- ""
proxyMode
ScopedProxyMode proxyModeコンポーネントをスコープ付きプロキシとして構成する必要があるかどうかを指定します。構成する場合は、プロキシをインターフェースベースにするかサブクラスベースにするかを指定します。デフォルトは
ScopedProxyMode.DEFAULTです。これは通常、コンポーネントのスキャン命令レベルで別のデフォルトが構成されていない限り、スコープ付きプロキシを作成しないことを示します。Spring XML の
<aop:scoped-proxy/>サポートに類似しています。- 関連事項:
- デフォルト:
- DEFAULT