コンテナー管理パーシスタンスの部分オペレーション

EJB 2.x コンテナー管理パーシスタンス (CMP) エンティティー Bean では、パーシスタンス・オプションとして部分オペレーションを使用して、データベースに対して CMP Bean のパーシスタント属性を更新する方法を指定します。

部分オペレーションに選択できる値には、NONE または UPDATE_ONLY の 2 つがあります。 部分オペレーションのデフォルト設定は NONE です。これは、パーシスタント属性フィールドのサブセットだけが変更された可能性がある場合でも、データベースに対する CMP Bean のすべてのパーシスタント属性がデータベースに保管されることを示します。部分オペレーションの UPDATE_ONLY オプションを指定すると、データベースへの更新は、変更された CMP Bean のパーシスタント属性のみに限定されます。Bean の setter メソッドにより、対応する CMP 属性が変更されたかどうかが判別されます。実際に値が変更されたかどうかに基づいて変更と見なされるわけではありません。つまり、setter メソッドが呼び出されて古い値と新しい値が同じままであっても、CMP 属性はダーティー、つまり変更済みと見なされます。

Bean 用に構成されたアクセス・インテント・ポリシーの Bean レベルで、部分オペレーションをパーシスタント・オプションとして指定できます。 部分オペレーションの指定方法について詳しくは、エンティティー Bean 2.x 用の Bean レベル・アクセス・インテントの追加を参照してください。

機能上の利点

部分更新 (部分オペレーションに UPDATE_ONLY 値を選択) オプションは、次のような機能上の利点を得るように設計されています。

パフォーマンス上の利点

部分更新オプションは、次のようなパフォーマンス上の利点を得るように設計されています。

パフォーマンスへの悪影響

部分更新はパフォーマンスを改善するように設計されていますが、パフォーマンスに悪影響を及ぼす場合もあります。部分更新の使用を考える場合は、以下の要因についても考慮してください。

制限事項


フィードバック