2016-09-17 8 views
1

問題を簡単に説明できません。Prototype、Builderパターンを使用したJava Object Clone(追加のクラスメンバ)

JPAは計算に使用する複雑なオブジェクトをいくつか作成し、データベースに格納します。 このオブジェクトの作業コピーに結果を設定することにしました。 これは、各オブジェクトモデルに対して、同じフィールドを持ち、他のLocalDates値と新しい結果フィールドを持つ別々の作業コピーモデルファイルを作成したことを意味します。 計算が開始されると、作業コピーがインスタンス化されます。 このアプローチは私が思っている最高のものではありません。 オブジェクトを複製するためのプロトタイプパターンを考えます。 新しいフィールドを追加する方法が問題になります。どうやって? Instantionコストとistは、追加のモデルクラスファイルをたくさん作成します。 私は、結果フィールドを計算データモデルに一時フィールドとして置くことしか考えていません。 おそらく、内部クラスまたはローカルクラスですか? 私はまた、データバケットとしてインターフェイスを使用しようとしました。 しかしそれはインターフェースの本当の目的ではなく、多くの興味深いトリックでしか動作しません。 ユニットテストとユーザー入力については、ビルダーパターンを使用し、親オブジェクトを格納するようにJPAに指示するのが最善だと思いますか?

+0

"このオブジェクトの作業コピーに結果を設定することを決めました。"なぜですか?なぜ単にResultクラスではないのですか? – jaco0646

+0

Lists and Sets One To Manyなどの大きな複雑なオブジェクト関係があります。私が結果を新しいクラスに設定すると、正しいオブジェクトを決定できません。リストでだから私たちはこれらの結果を同じ構造にし、これらのクラスをパッケージに分けました。 – ubuseral

答えて

0

申し訳ありませんが、私の答えは、コメント:(ために長いものであった

ありリストを使用した大規模、複雑なオブジェクトの関係があり、私はとりわけ新しいクラス、私は右を決定カント結果を設定するなど、多くの関係に1を。設定します。このような結果を得るために同じ構造体を作成し、これらのクラスをパッケージに分けます。おそらく、 "基本クラス"への参照を使って構造体を2回構築することはできません。同じ基本クラスには結果クラスがありますが、より深いクラスから値を取得するには、少しだけナビゲーションが必要です。類似のユースケースについては、ベストプラクティスが必要ですか?インタフェースかsthです。クラスメンバを複製して追加することはできませんその結果、または論理グループに簡単かこれに似たものがありますか?

それは誰かのための解決策になることができます:あなたはEclipseのAPIと連携し、IWorkingCopiesを作成します。ここ http://help.eclipse.org/luna/index.jsp?topic=%2Forg.eclipse.jdt.doc.isv%2Freference%2Fapi%2Forg%2Feclipse%2Fjdt%2Fcore%2FIWorkingCopy.html

。 説明されたタスクのために多くの。

+0

おそらく解決策:http://help.eclipse.org/luna/index.jsp?topic=%2Forg.eclipse.jdt.doc.isv%2Freference%2Fapi%2Forg%2Feclipse%2Fjdt%2Fcore%2FIWorkingCopy.html – ubuseral

+1

質問を編集してこの情報を追加してから、この回答を削除することができます。 – jaco0646

関連する問題