我正在定义一个实体 myParent,除了一件事之外它工作正常。它具有以下定义:
@OneToMany(mappedBy = "myParent", cascade = { CascadeType.ALL }, fetch = FetchType.EAGER)
private List<Child> children;
这会导致执行左连接或右连接,因此如果有两个 child ,我会得到两个 parent 。我不希望我只想要一个 parent 和两个 child 。
我可以将 fetchtype 更改为惰性,但我真的不想要那样......?
当我选择所有 parent 时,列表包含重复的 parent ,我不想要重复的。
最佳答案
您应该使用DISTINCT_ROOT_ENTITY
ResultTransformer .
这意味着每行结果都是根实体的不同实例。
关于java - eager fetch 在 hibernate 中执行左连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10400028/