微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用@QueryInit初始化QueryDSL查询中嵌入对象的属性的路径?

如何解决如何使用@QueryInit初始化QueryDSL查询中嵌入对象的属性的路径?

根据QueryDSL文档,(http://www.querydsl.com/static/querydsl/4.0.8/reference/html_single/#d0e2250)仅在生成的Q类中初始化路径的前两个级别,因此,如果对象A在{{ {1}},您不能做诸如在查询中进行查询这样的操作来从B内部访问A的ID。它们具有@Entity注释,可用于那些我们需要更深层路径但文档非常简短,我不明白其用法。现在,当我尝试在应用程序中运行查询时,我收到“无效路径”异常。是否有人使用@JoinColumn解决类似于我的问题?

查询where子句(即QueryDSL中的子句)类似于@QueryInit,其中a被“嵌入”在b内

我看到的异常是:

@QueryInit

我试图将其“翻译”为QueryDSL的查询看起来像这样:

a.id.eq(b.a.id)

解决方法

谓词最终只是:

a.amount.loe(
JPAExpressions.select(b.amount.sum()).from(b).where(a.id.eq(b.a.id)))
)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。