エンティティーのライフサイクル

エンティティー・インスタンスのライフサイクルは、そのエンティティー・マネージャーによって管理されます。

エンティティー・マネージャー・インスタンスは、パーシスタンス・コンテキストに関連付けられます。このパーシスタンス・コンテキスト内では、エンティティー・インスタンスとそのライフサイクルが管理されて、エンティティー・マネージャーの標準操作としてアクセスが可能です。

エンティティー・インスタンスは、トランザクション・スコープまたは拡張パーシスタンス・コンテキストが終了すると、管理対象外になり、切り離されます。ここで重要となるのは、切り離されたエンティティーはシリアライズされて、ネットワーク内のリモート・クライアントに送信可能になるという点です。クライアントは、こうしたシリアライズド・オブジェクト・インスタンスにリモートで変更を加え、それを再びサーバーに送り返し、データベースとマージして同期することができます。
注: この動作は EJB 2.1 エンティティー・モデルと大いに異なります。2.1 の場合、エンティティーは常にコンテナーによって管理されていました。EJB 3.0 では POJO のエンティティーを扱っているので、Java EE アプリケーションの設計方法が簡単になります。ビジネス・ロジック・レイヤー (セッション Bean) とパーシスタンス・レイヤー間でデータ転送オブジェクト (DTO) などのパターンを必ずしも使用する必要がないからです。

フィードバック