2012-02-10 11 views
0

私は、休止状態でユーザークラスを定義します。ユーザーには住所があります。hibernateでは、クラス定義でアソシエートを初期化する必要がありますか?

@Entity 
public class User { 
    private Address address; 

    public Address getAddress() { 
     return address; 
    } 
    public void setAddress(Address address) { 
     this.address = address; 
    } 
} 

以下のようなアドレスを初期化する必要がありますか?

private Address address = new Address(); 

どちらかと思われます。ベストプラクティスは何ですか?

答えて

0

私の意見では、これはあなたのの要件に依存します!!

  • UserAddressその後、YESなしでは存在できない場合は、
  • は、そうでない場合nullアドレスは、あなたがUserの任意のAddressを知らない外の世界を表現するための最良の方法だろう。
  • コレクション(リスト、セット、コレクション、バッグ)を空コレクションに設定できるため、nullを確認する必要はありません。これは、Hibernateの基本的性質がnullコレクションアソシエーションと空のものを区別しないためです。チェックJboss Hibernate Reference documentation here
+0

空のアドレスは実際にはアドレスのことを知っていることを示すものではありません。私にとっては、それらは論理的に同等であるように見えますが、ヌルアドレスがもう少し明らかです。 – AHungerArtist

関連する問題