Jpa ORMコース#5

2115 ワード

デフォルトのタイプ


  • デフォルトデータ値はcallby value
  • です.
  • class typeの場合、callby reference(参照によって呼び出される)であるため、setValueのような方法があると仮定すると、bは20を含む.
  • Embedded


    @Embeddededededededede:使用中に表示
    @Embeddable:値を定義した場所に表示
    ->両方の中で1つだけ使ってもいいですが、どちらも使うことをお勧めします

  • DBの立場ではマッピングテーブルは同じ

  • 設計されたORMアプリケーションのクラス数は、マッピングされたテーブル数よりも多くなります.




  • Entityを挿入することもできます



    同じプロパティのEmbedded typeを使用する場合は、次の操作を行います。


    @AttributeOverridesの使用

    これで使えます.

    値のタイプ


    imbeddyタイプのような値を複数のエンティティで共有することは危険です.
    ex)
    member2.getHomeAddress().setCity("newCity");
    メンバー1がAddress embededtypeを共有している場合、メンバー1の値も変更されます.
    新しいインスタンスを作成して使用する必要があります.
    -->Embeded type=オブジェクトタイプ
  • オブジェクトタイプでは、参照値の直接入力はブロックされません.
  • オブジェクトの共有参照は避けられません。


    だから

    不変オブジェクト


    値のタイプは、不変のオブジェクトに設定する必要があります.
  • だから値だけを作成者(Setter)
  • は作成しない
    IntegerとStringはJavaが提供する不変のオブジェクトであることに注意してください.

    比較値のタイプ


    参照値を比較する必要があります.

    出力値:false
  • equals、hashcodeクラスで定義され、equalsで比較されます(equalsのデフォルトは==比較なので、書き直さない場合はfalseと同じです)

  • (既定値は)