Hibernate複合キーおよび外部ジェネレーター

generator hibernate
Hibernate複合キーおよび外部ジェネレーター

私は、子クラスの外部キーに親のIDを自動的に取得させようとしています。

子クラス:

public class Child implements Serializable
{
    // primary (composite) key
    private int parentId; // I want this to be set automatically
    private String name;

    // random value
    private String val;

    public Child(String name, String val) {
       this.name = name;
       this.val = val;
    }

    public void setParentId(int id) {

    [...]
}

親xml:

子xml:

            ParentId

ただし、次のように失敗します。

_
HibernateException:プロパティを解決できません:ParentId
_

Hibernateは複合IDの外部ジェネレーターをサポートしますか? または、親クラスがマップを保持しているという事実は問題ですか?

  0  0


ベストアンサー

私は自分でこれを試してみたが、それは私のために働いた

クラス定義

子クラスは `equals()`と `hashCode()`メソッドを実装する必要があることに注意してください。

public class Parent {

    private int id;
    private String name;

//...getter setter methods
}


public class Child implements Serializable{

    private Parent parent;
    private String name;

      public boolean equals(Object c){
         //implement this
      }

      public int hashCode(){
           //implement this
      }

//..getter setter methods
}

休止状態マッピング

注意 :

  1. 親のマッピングは表示されません

  2. 子と親の間の「多対一」マッピングは
    `unique =” true “`は `1対1`の関係を示します

  3. 列が次のように使用されているため、 insert =" false "`および `update =" false "
    composite-id

子クラスのマッピング:

1


タイトルとURLをコピーしました