インターフェース AutowireCandidateResolver
- すべての既知の実装クラス:
ContextAnnotationAutowireCandidateResolver
、GenericTypeAwareAutowireCandidateResolver
、QualifierAnnotationAutowireCandidateResolver
、SimpleAutowireCandidateResolver
public interface AutowireCandidateResolver
特定の Bean 定義が特定の依存関係のオートワイヤー候補として適格かどうかを判断するための戦略インターフェース。
- 導入:
- 2.5
- 作成者:
- Juergen Hoeller, Mark Fisher
方法の概要
修飾子と型メソッド説明default AutowireCandidateResolver
必要に応じてこのリゾルバーインスタンスのクローンを返します。ローカル構成を保持し、クローンされたインスタンスを新しい Bean ファクトリに関連付けることができます。そのような状態がない場合は、この元のインスタンスに関連付けます。default ClassSE<?>
getLazyResolutionProxyClass
(DependencyDescriptor descriptor, StringSE beanName) インジェクションポイントで要求された場合、依存関係ターゲットの遅延解決のためのプロキシクラスを決定します。default ObjectSE
getLazyResolutionProxyIfNecessary
(DependencyDescriptor descriptor, StringSE beanName) インジェクションポイントで要求された場合、実際の依存関係ターゲットの遅延解決のためのプロキシを構築します。default StringSE
getSuggestedName
(DependencyDescriptor descriptor) 指定された依存関係に対してターゲット Bean 名が提案されているかどうかを判断します (通常は単一値の修飾子で宣言されますが、必ずしもそうとは限りません)。default ObjectSE
getSuggestedValue
(DependencyDescriptor descriptor) 指定された依存関係に対してデフォルト値が提案されているかどうかを判断します。default boolean
hasQualifier
(DependencyDescriptor descriptor) 指定された記述子が型を超えて修飾子を宣言しているかどうかを判別します(通常、特定の種類のアノテーション)。default boolean
isAutowireCandidate
(BeanDefinitionHolder bdHolder, DependencyDescriptor descriptor) 指定された Bean 定義が、指定された依存関係のオートワイヤー候補として適格かどうかを判別します。default boolean
isRequired
(DependencyDescriptor descriptor) 指定された記述子が効果的に必要かどうかを判断します。
メソッドの詳細
isAutowireCandidate
指定された Bean 定義が、指定された依存関係のオートワイヤー候補として適格かどうかを判別します。デフォルトの実装は
BeanDefinition.isAutowireCandidate()
をチェックします。- パラメーター:
bdHolder
- Bean 名とエイリアスを含む Bean 定義descriptor
- ターゲットメソッドのパラメーターまたはフィールドの記述子- 戻り値:
- Bean 定義がオートワイヤー候補として適格かどうか
- 関連事項:
isRequired
指定された記述子が効果的に必要かどうかを判断します。デフォルトの実装は
DependencyDescriptor.isRequired()
をチェックします。- パラメーター:
descriptor
- ターゲットメソッドのパラメーターまたはフィールドの記述子- 戻り値:
- 記述子が必須としてマークされているか、他の方法で非必須ステータスを示しているかどうか (たとえば、パラメーターアノテーションを通して)
- 導入:
- 5.0
- 関連事項:
hasQualifier
指定された記述子が型を超えて修飾子を宣言しているかどうかを判別します(通常、特定の種類のアノテーション)。デフォルトの実装は
false
を返します。- パラメーター:
descriptor
- ターゲットメソッドのパラメーターまたはフィールドの記述子- 戻り値:
- 記述子が修飾子を宣言して、型の一致を超えて候補のステータスを絞り込むかどうか
- 導入:
- 5.1
- 関連事項:
getSuggestedName
指定された依存関係に対してターゲット Bean 名が提案されているかどうかを判断します (通常は単一値の修飾子で宣言されますが、必ずしもそうとは限りません)。- パラメーター:
descriptor
- ターゲットメソッドのパラメーターまたはフィールドの記述子- 戻り値:
- 修飾子の値(ある場合)
- 導入:
- 6.2
getSuggestedValue
指定された依存関係に対してデフォルト値が提案されているかどうかを判断します。デフォルトの実装は、単に
null
を返します。- パラメーター:
descriptor
- ターゲットメソッドのパラメーターまたはフィールドの記述子- 戻り値:
- 提案された値(通常は式文字列)。見つからない場合は
null
- 導入:
- 3.0
getLazyResolutionProxyIfNecessary
@Nullable default ObjectSE getLazyResolutionProxyIfNecessary(DependencyDescriptor descriptor, @Nullable StringSE beanName) インジェクションポイントで要求された場合、実際の依存関係ターゲットの遅延解決のためのプロキシを構築します。デフォルトの実装は、単に
null
を返します。- パラメーター:
descriptor
- ターゲットメソッドのパラメーターまたはフィールドの記述子beanName
- インジェクションポイントを含む Bean の名前- 戻り値:
- 実際の依存関係ターゲットの遅延解決プロキシ、または直接解決を実行する場合は
null
- 導入:
- 4.0
getLazyResolutionProxyClass
@Nullable default ClassSE<?> getLazyResolutionProxyClass(DependencyDescriptor descriptor, @Nullable StringSE beanName) インジェクションポイントで要求された場合、依存関係ターゲットの遅延解決のためのプロキシクラスを決定します。デフォルトの実装は、単に
null
を返します。- パラメーター:
descriptor
- ターゲットメソッドのパラメーターまたはフィールドの記述子beanName
- インジェクションポイントを含む Bean の名前- 戻り値:
- 依存関係ターゲットの遅延解決プロキシクラス (存在する場合)
- 導入:
- 6.0
cloneIfNecessary
必要に応じてこのリゾルバーインスタンスのクローンを返します。ローカル構成を保持し、クローンされたインスタンスを新しい Bean ファクトリに関連付けることができます。そのような状態がない場合は、この元のインスタンスに関連付けます。デフォルトの実装では、コピーする特定の構成状態がないと仮定して、デフォルトのクラスコンストラクターを介して別のインスタンスを作成します。サブクラスは、カスタム構成状態の処理または標準の
Cloneable
SE サポート(Spring の独自の構成可能なAutowireCandidateResolver
バリアントによって実装されている)でこれをオーバーライドするか、単にthis
を返します(SimpleAutowireCandidateResolver
のように)。