Order と Item があるデータベース (JPA 2 Eclipselink) があります。各注文には多くのアイテムを含めることができ、各アイテムは 1 つの注文にのみ割り当てることができます。これは一方向の関係です。
注文エンティティ:
@Entity
public class Order implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
}
Item エンティティには次のものがあります。
@Entity
public class Item implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@ManyToOne
Order o;
}
しかし、注文がデータベースから削除された場合、それを参照しているすべてのアイテムが削除されるように設定するにはどうすればよいでしょうか? 一方向の関係で可能ですか、または双方向を作成して @OneToMany(cascade=remove) を Order Entity Class に入れる必要がありますか? またはそれを一方向に保ちますが、所有側は注文になり、アイテムエンティティから注文への参照を削除しますか?