有一个父子类如下
@Entity
class Parent {
@Id
Long id;
@OneToMany(orphanRemoval = true, cascade = CascadeType.ALL)
List<Child> children;
}
@Embeddable
class Child{
@Id
Long id;
// child does not have parent id
}
我正在使用 ObjectDB 和 JPA。我的数据库变大了,一些父母有 50 万个孩子。通常,为了获取父母的所有孩子,我正在加载父母并通过延迟加载以 parent.getChildren() 的身份访问孩子。但是,由于列表太大,需要大量内存。
如何以高性能的方式将特定父级的所有子级作为轻量级 DTO 对象列表?
额外问题:如何有效地删除父母的所有孩子?