public class Jsr330ScopeMetadataResolver extends ObjectSE implements ScopeMetadataResolver
ScopeMetadataResolver
実装: Singleton
EE が存在しない場合は、デフォルトでプロトタイプスコープになります。 このスコープリゾルバーは、ClassPathBeanDefinitionScanner
および AnnotatedBeanDefinitionReader
と共に使用して、標準の JSR-330 に準拠させることができます。ただし、実際には、通常は代わりに Spring の豊富なデフォルトスコープを使用するか、拡張された Spring スコープを指すカスタムスコープアノテーションでこのリゾルバーを継承します。
registerScope(java.lang.Class<?>, java.lang.String)
, resolveScopeName(java.lang.String)
, ClassPathBeanDefinitionScanner.setScopeMetadataResolver(org.springframework.context.annotation.ScopeMetadataResolver)
, AnnotatedBeanDefinitionReader.setScopeMetadataResolver(org.springframework.context.annotation.ScopeMetadataResolver)
コンストラクターと説明 |
---|
Jsr330ScopeMetadataResolver() |
修飾子と型 | メソッドと説明 |
---|---|
void | registerScope(ClassSE<?> annotationType, StringSE scopeName) 拡張 JSR-330 スコープアノテーションを登録し、名前で特定の Spring スコープにマッピングします。 |
void | registerScope(StringSE annotationType, StringSE scopeName) 拡張 JSR-330 スコープアノテーションを登録し、名前で特定の Spring スコープにマッピングします。 |
ScopeMetadata | resolveScopeMetadata(BeanDefinition definition) 提供された Bean definition に適切な ScopeMetadata を解決します。 |
protected StringSE | resolveScopeName(StringSE annotationType) 指定されたアノテーション型を名前付き Spring スコープに解決します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public final void registerScope(ClassSE<?> annotationType, StringSE scopeName)
annotationType
- クラスとしての JSR-330 アノテーション型 scopeName
- Spring スコープ名 public final void registerScope(StringSE annotationType, StringSE scopeName)
annotationType
- 名前による JSR-330 アノテーション型 scopeName
- Spring スコープ名 protected StringSE resolveScopeName(StringSE annotationType)
デフォルトの実装では、登録されたスコープをチェックするだけです。カスタムマッピングルール(例: 命名規則。
annotationType
- JSR-330 アノテーション型 public ScopeMetadata resolveScopeMetadata(BeanDefinition definition)
ScopeMetadataResolver
definition
に適切な ScopeMetadata
を解決します。 もちろん、実装はスコープメタデータを決定するために任意の戦略を使用できますが、すぐに思い浮かぶいくつかの実装は、提供された definition
の the class
に存在するソースレベルのアノテーションを使用するか、提供された definition
の AttributeAccessor.attributeNames()
。
ScopeMetadataResolver
の resolveScopeMetadata
definition
- ターゲット Bean 定義 null