如何在onetomany类定义中定义where子句

时间:2013-08-27 18:11:42

标签: java persistence

我是Java Persistence等的新手 我定义了一对多关系并且它可以工作,但是我无法在许多实体中定义where子句。 例如,我的搜索返回订单列表和每个订单的订单商品集合。 但是,如何在LineItem实体类中应用where子句,例如 本机SQL看起来像这样(大致)

SELECT Orders.OrderNumber, LineItems.Quantity, LineItems.Description
FROM Orders, LineItems WHERE Orders.OrderID = LineItems.OrderID
AND LineItems.Description IN ('XXX1', 'XXXXX2','XXXX3')`
AND LineItems.Quantity = 5

我不知道如何定义:

AND LineItems.Description IN ('XXX1', 'XXXXX2','XXXX3')
AND LineItems.Quantity = 5
LineItems类中的

。 请帮助。

1 个答案:

答案 0 :(得分:0)

这更像是一种解决方法,而不是对问题的回答,但它可能是唯一的方法:创建一个NamedQuery,以您希望的方式限制结果并改为使用NamedQuery。 Here's a tutorial on how to do that.

The answers to this question暗示我的建议是实现你所需要的唯一方法。那些答案是特定于Hibernate的。