我有一个数据库(JPA 2 Eclipselink),其中有订单和项目,每个订单可以有很多项目,每个项目只能分配给一个订单。这是单向关系。
订单实体:
@Entity
public class Order implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
}
项目实体具有:
@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) 放在订单实体类中?还是保持单向,但拥有方将是订单并从项目实体中删除对订单的任何引用?