Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 基本・開発編(EJBコンテナ)


2.8.1 Entity Beanのキャッシュモデルの種類

Entity Beanでは,次に示す3種類のCMPフィールドのキャッシュ方法,およびEntity Beanの状態遷移をサポートしています。

なお,コミットオプションは,J2EEアプリケーションに含まれるEntity Beanの属性(プロパティ)として設定します。J2EEアプリケーションの設定については,「2.8.2 cosminexus.xmlでの定義」を参照してください。

〈この項の構成〉

(1) Full caching(commit option A)

Full cachingは,参照系のEntity Bean用のキャッシュモデルです。トランザクション開始時にデータベースからEntity Beanインスタンスにデータが読み込まれません。このため,Entity Beanが前回のトランザクションコミット時と同じ状態のままでトランザクションが開始されます。

例えば,前回のトランザクションコミット時からトランザクション開始時の間にほかのJ2EEサーバがEntity Beanを更新した場合,Entity Beanの状態の一貫性が保たれません。

(2) Caching(commit option B)

Cachingは,更新系のEntity Beanのキャッシュモデルです。トランザクション開始時にデータベースからEntity Beanインスタンスにデータが読み込まれます。このため,Entity Beanがデータベースの最新状態と同じ状態でトランザクションが開始されます。

(3) No caching(commit option C)

No cachingは,更新系のEntity Beanのキャッシュモデルです。トランザクションコミット時にEntity Beanが非活性化されます。トランザクション開始時には,一度活性化され,データベースからEntity Beanインスタンスにデータが読み込まれます。このため,Entity Beanがデータベースの最新状態と同じ状態でトランザクションが開始されます。このため,多数のEntity Beanを利用する場合に適用するキャッシュモデルです。