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