2011-01-28 4 views
1

私は現在テストしていますこの種のものにあなたの見解を共有してください:階層間にEntityオブジェクト[s]を渡しますか?

  1. は私のJSF管理対象Bean
  2. バインド入力テキストのようなJSFフォーム要素にエンティティのプロパティ、コンボ内のJPAエンティティを持っています例えば、エンティティの詳細オブジェクトのリストのためのデータ可能なものであってもよい。
  3. サービスオブジェクトによって処理されたエンティティ(エンティティオブジェクト自体を意味する)とおそらく他の単純な変数/オブジェクト
  4. サービスは、いくつかの基本的な検証または単純な処理を行い、エンティティオブジェクトをDAOレイヤーに配信します
  5. を永続化し、JSFビューが切り離さエンティティ

に反映されますOK階層間のエンティティを渡すとソリューションのこの種のですか?

、私はWebアプリケーションの「変数」でプレイするために使用されたので、(1支柱にマップベースのフォームBeanを使用して)、この問題で私の経験不足のために私を許して、私はいくつかの他の形式にエンティティをオブジェクト変換について読みましたしかし、私はそれが何のためにわからないのですか?

エンティティ間の関係が定義されている場合、エンティティの関係をJSFコンポーネントにバインドすることができます。したがって、エンティティのプロパティに基づいてレンダリングして入力できます。

答えて

2

はい、これはまあまあまあ、実際には今のところ推奨される方法です。

この「エンティティオブジェクトを他の形式に変換する」というのはおそらくData Transfer Objectパターンを参照しています。エンティティクラスは通常、フレームワーク固有の基本クラスから継承し、バイトコードEJBコンテナによってプロキシオブジェクトとして実装されていました。

このようなエンティティオブジェクトは、シリアル化できないか、実際のエンティティデータよりもはるかに多くの状態が含まれていたため、シリアル化すると多くのスペースを無駄にします。したがって、別々のアプリケーションサーバー層を使用する場合は、DTOパターンを使用してWeb層と効率的に通信する必要がありました。

+0

私は同じことをします。それは私のためにうまくいく。 –

関連する問題