ヘッダーをスキップ
Oracle® Fusion Middleware Oracle TopLink Java Persistence API (JPA)拡張機能リファレンス
12c (12.1.2)
E48005-01
  目次へ移動
目次

前
 
次
 

@CacheInterceptor

エンティティで@CacheInterceptorを使用して、イベントを通じてキャッシュ操作に応答するかわりに、エンティティに対するすべてのEclipseLinkのキャッシュ・アクセスをインターセプトします。

注釈要素

表2-7は、この注釈の要素を示しています。

表2-7 @CacheInterceptorの注釈要素

注釈要素 説明 デフォルト

value

EclipseLinkのキャッシュ・アクセスのインターセプトに使用されるクラス



使用方法

一度設定すると、指定されたクラスがすべてのキャッシュ・コールを受信します。既存のEclipseLinkのキャッシュ設定は引き続き使用され、EclipseLinkキャッシュに対して継続できるすべてのコールは構成されたキャッシュに対して実行されます。

継承でエンティティとともに使用する場合、継承階層のルート@CacheInterceptorを定義する必要があります。

例2-16に、外部キャッシュをEclipseLinkと統合する方法を示します。

例2-16 Using @CacheInterceptor注釈の使用

この例では、Employeeクラスが、EclipseLinkの内部キャッシュに対するすべてのOracle TopLinkコールをインターセプトし、Oracle Coherence Gridのキャッシュ(CoherenceInterceptor)にリダイレクトします。

import oracle.eclipselink.coherence.integrated.cache.CoherenceInterceptor;
import org.eclipse.persistence.annotations.Customizer;
 
@Entity
@CacheInterceptor(value = CoherenceInterceptor.class)
public class Employee {
...
}

例2-17に、eclipselink-orm.xmlファイルの<cache-interceptor> XML要素の使用例を示します。

例2-17 <cache-interceptor> XMLの使用

<entity class="Employee">
    <cache-interceptor class="CoherenceInterceptor"/>
...
</entity>

関連項目

詳細は、次を参照してください。