私には、(とりわけ)これらのプロパティを持つクラス「人」がいます。
- homeAddress(タイプアドレスの)
- BillingAddress(タイプアドレスの)
- アドレス(リストタイプの場合、その人の既知のアドレスがすべて含まれています)
コレクション「addresses」は、他の2つのプロパティによって明示的に参照されている2つを含む、その人のすべての既知のアドレスへの参照を保持します(履歴ではなく、「おばあちゃんの家」のように、その人を「見つけた」場所のリストです。または「オフィス」)。たぶん、その人は「自宅の住所」、「請求先の住所」、「住所」によって参照される住所を1つだけ持っています。
データベースには、列「homeAddressID」と別の「billingAddressId」を持つテーブル「people」と、「personId」だけを持つテーブル「addresses」があります(ここでは「isHomeAddress」や「isBillingAddress」のようなフラグはありません)。
このクラスをどのようにマップする必要がありますか?