QueryDsl MongoDB - 查询深度嵌套对象的方法

12

当我使用 BooleanBuilder 时,我遇到了访问嵌套对象的问题。我已经阅读过默认为2级,但对于我的用例,我需要访问第3级嵌套对象。因此,我添加了 @QueryInit,正如其他许多答案所指出的那样。但我仍然无法访问它。这是我的代码:

@Document
public class Order implements Serializable {

     @QueryInit(*.*)
     private Item item;

}

public class Item implements Serializable {
   private Details details;
}

public class Details implements Serializable {
   private String name;
}

public static BooleanExpression name(String name) {
  QOrder order = QOrder.order;
  return order.item.details.name.eq(name)
}

我已经生成并成功使用了QOrderQItem类。但是当我尝试访问details.description时,出现错误,因为QDetails类未被生成。请问如何生成QDetails类?


1
你找到解决方案了吗? - Yubaraj
1个回答

0
我看到的第一个问题是你在return语句上漏了一个分号,这可能会导致其他问题。生成QDetails的方法是首先引用查询,然后从分配的结果请求详细信息。

你能详细说明一下你所说的引用查询是什么意思吗? - aksh1618

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接