エンティティ間の関係を定義する例を見ていますが、1 対多の関係の参照でマッピングされたものがわかりませんでした。テーブルの列の名前ですか、それともクラスの名前ですか?
@OneToMany(fetch = FetchType.LAZY, mappedBy = "company")
エンティティ間の関係を定義する例を見ていますが、1 対多の関係の参照でマッピングされたものがわかりませんでした。テーブルの列の名前ですか、それともクラスの名前ですか?
@OneToMany(fetch = FetchType.LAZY, mappedBy = "company")
上記のどれでもない。これは、関連付けの反対側の属性/プロパティの名前です。たとえば、次のようになります。
public class Car {
@OneToMany(mappedBy = "theCar")
private List<Wheel> wheels;
}
public class Wheel {
@ManyToOne
@JoinColumn(name = "COL_CAR")
private Car theCar;
}
上記の例では、mappedBy = "theCar"
次のことを意味します: I はtheCar
、 classの属性によってマップされる双方向関連の逆側ですWheel
。
また、クラス Wheel では、関連付けは関連付けがどのようにマップされるかを定義します: という名前の結合列を使用しますCOL_CAR
。