QueryDSL使用双向关系连接两级向下

QueryDSL使用双向关系连接两级向下,querydsl,Querydsl,我正在寻找QueryDSL帮助 我有三张桌子。1) 订单2)详细信息3)行 订单可以有多个详细信息,详细信息可以有多行 所以我要做的就是 // bi-directional many-to-one association to FociRequestDetail @OneToMany(mappedBy = "omsOrder") private List<FociRequestDetailDO> fociRequestDetails; 我想查询给定orderId=1

我正在寻找QueryDSL帮助

我有三张桌子。1) 订单2)详细信息3)行

订单可以有多个详细信息,详细信息可以有多行

所以我要做的就是

// bi-directional many-to-one association to FociRequestDetail
    @OneToMany(mappedBy = "omsOrder")
    private List<FociRequestDetailDO> fociRequestDetails;
我想查询给定orderId=12345的所有详细信息和行

所以我的结果应该有一个对象或OrderDO OrderDO,因为它可以是给定OrderId的一个 --详细信息DO应为多个或基于orderId的一个 ----行DO应为多行或基于detailId的一行

我试过了 .from(orderDO).join(orderDO.fociRequestDetails,fociRequestDetailDO) .其中(orderDO.orderId.eq(orderNo))

它给了我两个OrderDO对象。理想情况下,它应该只返回一个对象和两个细节

请建议我如何通过一个有序的对象和它的细节子对象,然后是它的内部细节行子对象来实现这一点

    // bi-directional many-to-one association to FociRequestLine
    @OneToMany(mappedBy = "fociRequestDetail")
    private List<FociRequestLineDO> fociRequestLines;

@ManyToOne
    @JoinColumn(name = "OMS_ORDER_ID")
    private OmsOrderDO omsOrder;
@ManyToOne
    @JoinColumn(name = "REQUEST_DETAIL_ID")
    private FociRequestDetailDO fociRequestDetail;