クラス AnnotationCacheOperationSource
java.lang.ObjectSE
org.springframework.cache.interceptor.AbstractFallbackCacheOperationSource
org.springframework.cache.annotation.AnnotationCacheOperationSource
- 実装されたすべてのインターフェース:
SerializableSE
,CacheOperationSource
public class AnnotationCacheOperationSource
extends AbstractFallbackCacheOperationSource
implements SerializableSE
アノテーション形式でメタデータをキャッシュするための
CacheOperationSource
インターフェースの実装。 このクラスは、Spring の Cacheable
、CachePut
、CacheEvict
アノテーションを読み取り、対応するキャッシュ操作定義を Spring のキャッシュインフラストラクチャに公開します。このクラスは、カスタム CacheOperationSource
の基本クラスとしても機能します。
- 導入:
- 3.1
- 作成者:
- Costin Leau, Juergen Hoeller, Stephane Nicoll
- 関連事項:
ネストされたクラスのサマリー
修飾子と型クラス説明protected static interface
指定されたCacheAnnotationParser
に基づいてCacheOperation
インスタンスを提供するコールバックインターフェース。フィールドサマリー
クラス org.springframework.cache.interceptor.AbstractFallbackCacheOperationSource から継承されたフィールド
logger
コンストラクターのサマリー
コンストラクター説明デフォルトの AnnotationCacheOperationSource を作成し、Cacheable
およびCacheEvict
アノテーションを運ぶ public メソッドをサポートします。AnnotationCacheOperationSource
(boolean publicMethodsOnly) デフォルトのAnnotationCacheOperationSource
を作成し、Cacheable
およびCacheEvict
アノテーションを運ぶ public メソッドをサポートします。AnnotationCacheOperationSource
(SetSE<CacheAnnotationParser> annotationParsers) カスタム AnnotationCacheOperationSource を作成します。AnnotationCacheOperationSource
(CacheAnnotationParser annotationParser) カスタム AnnotationCacheOperationSource を作成します。AnnotationCacheOperationSource
(CacheAnnotationParser... annotationParsers) カスタム AnnotationCacheOperationSource を作成します。メソッドのサマリー
修飾子と型メソッド説明protected boolean
デフォルトでは、public メソッドのみをキャッシュ可能にできます。protected CollectionSE<CacheOperation>
指定されたAnnotationCacheOperationSource.CacheOperationProvider
のキャッシュ操作を決定します。boolean
protected CollectionSE<CacheOperation>
findCacheOperations
(ClassSE<?> clazz) サブクラスは、指定されたクラスのキャッシュ操作 (存在する場合) を返すためにこれを実装する必要があります。protected CollectionSE<CacheOperation>
findCacheOperations
(MethodSE method) サブクラスは、指定されたメソッドのキャッシュ操作 (存在する場合) を返すためにこれを実装する必要があります。int
hashCode()
boolean
isCandidateClass
(ClassSE<?> targetClass) 指定されたクラスが、このCacheOperationSource
のメタデータ形式のキャッシュ操作の候補であるかどうかを判断します。クラス org.springframework.cache.interceptor.AbstractFallbackCacheOperationSource から継承されたメソッド
getCacheKey, getCacheOperations
コンストラクターの詳細
AnnotationCacheOperationSource
public AnnotationCacheOperationSource()デフォルトの AnnotationCacheOperationSource を作成し、Cacheable
およびCacheEvict
アノテーションを運ぶ public メソッドをサポートします。AnnotationCacheOperationSource
public AnnotationCacheOperationSource(boolean publicMethodsOnly) デフォルトのAnnotationCacheOperationSource
を作成し、Cacheable
およびCacheEvict
アノテーションを運ぶ public メソッドをサポートします。- パラメーター:
publicMethodsOnly
- 通常はプロキシベースの AOP で使用するためのアノテーション付き public メソッドのみをサポートするか、保護 / プライベートメソッドもサポートするか (通常、AspectJ クラスのウィービングで使用されます)
AnnotationCacheOperationSource
カスタム AnnotationCacheOperationSource を作成します。- パラメーター:
annotationParser
- 使用する CacheAnnotationParser
AnnotationCacheOperationSource
カスタム AnnotationCacheOperationSource を作成します。- パラメーター:
annotationParsers
- 使用する CacheAnnotationParser
AnnotationCacheOperationSource
カスタム AnnotationCacheOperationSource を作成します。- パラメーター:
annotationParsers
- 使用する CacheAnnotationParser
メソッドの詳細
isCandidateClass
インターフェースからコピーされた説明:CacheOperationSource
指定されたクラスが、このCacheOperationSource
のメタデータ形式のキャッシュ操作の候補であるかどうかを判断します。このメソッドが
false
を返す場合、指定されたクラスのメソッドはCacheOperationSource.getCacheOperations(java.lang.reflect.Method, java.lang.Class<?>)
イントロスペクションのために走査されません。false
を返すことは、影響を受けないクラスの最適化です。一方、true
は、クラスが特定のクラスの各メソッドに対して個別に完全に内省する必要があることを意味します。- 次で指定:
- インターフェース
CacheOperationSource
のisCandidateClass
- パラメーター:
targetClass
- 内省するクラス- 戻り値:
false
(クラスがクラスまたはメソッドレベルでキャッシュ操作メタデータを持たないことがわかっている場合)。それ以外の場合はtrue
。デフォルトの実装はtrue
を返し、通常のイントロスペクションが行われます。
findCacheOperations
クラスからコピーされた説明:AbstractFallbackCacheOperationSource
サブクラスは、指定されたクラスのキャッシュ操作 (存在する場合) を返すためにこれを実装する必要があります。- 次で指定:
- クラス
AbstractFallbackCacheOperationSource
のfindCacheOperations
- パラメーター:
clazz
- キャッシュ操作を取得するクラス- 戻り値:
- このクラスに関連付けられたすべてのキャッシュ操作、または何もない場合は
null
findCacheOperations
クラスからコピーされた説明:AbstractFallbackCacheOperationSource
サブクラスは、指定されたメソッドのキャッシュ操作 (存在する場合) を返すためにこれを実装する必要があります。- 次で指定:
- クラス
AbstractFallbackCacheOperationSource
のfindCacheOperations
- パラメーター:
method
- キャッシュ操作を取得するメソッド- 戻り値:
- このメソッドに関連付けられたすべてのキャッシュ操作、またはない場合は
null
determineCacheOperations
@Nullable protected CollectionSE<CacheOperation> determineCacheOperations(AnnotationCacheOperationSource.CacheOperationProvider provider) 指定されたAnnotationCacheOperationSource.CacheOperationProvider
のキャッシュ操作を決定します。この実装は、既知のアノテーションを Spring のメタデータ属性クラスに解析するための構成済み
CacheAnnotationParsers
に委譲します。オーバーライドして、キャッシュメタデータを運ぶカスタムアノテーションをサポートできます。
- パラメーター:
provider
- 使用するキャッシュ操作プロバイダー- 戻り値:
- 設定されたキャッシング操作。見つからない場合は
null
allowPublicMethodsOnly
protected boolean allowPublicMethodsOnly()デフォルトでは、public メソッドのみをキャッシュ可能にできます。- オーバーライド:
- クラス
AbstractFallbackCacheOperationSource
のallowPublicMethodsOnly
equals
hashCode
public int hashCode()