我有一个组合模式,其中父对象有一个子对象列表,例如 Order 和 LineItem。
它的行为类似于删除孤儿的级联,但子对象是@Embeddables 而不是@Entities,并且没有自己的ID - 它们总是通过它们的父对象进行管理。
在 JPA 中,我可以做这样的事情来确保每当我保存订单时,LineItems 的集合会同步,包括删除已删除的项目:
public class Order {
@ElementCollection
@CollectionTable(...)
private Set<LineItem> items;
}
在 Grails 中,等价物是什么?
我可以使用 cascade all-delete-orphan 来做 hasMany,但如果有类似的方法让子对象没有自己的 ID(基本上,不是实体),我会更喜欢。