使用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)
}
我生成了QOrder
,QItem
类,并且工作正常。但是由于未生成QDetails
类,所以details.description给出了错误。如何使它生成QDetails
?
答案 0 :(得分:0)
我看到的第一个问题是您错过了return语句中的分号,这可能导致您遇到其他问题。生成QDetails
的方法是先引用查询,然后从分配的结果中请求详细信息。
希望这会有所帮助!