假设我有一个Customer-CustomerOrder一对多双向关系,其中CustomerOrder持有每个订单的总价值。
如果我有一个查询来查找特定客户的所有订单的总价值:
select SUM(o.orderValue) from CustomerOrder o where o.customer = :customer
在哪个实体类中进行注释是否重要?你为什么要把它放在一个或另一个?
最佳答案
在哪个实体类中进行注释是否重要?
从技术角度来看,这无关紧要,因为您将使用name
的@NamedQuery
来调用它。
你为什么要把它放在一个或另一个?
但是,从“逻辑”的角度来看,将@NamedQuery
放在“自然”的位置绝对可以简化维护。在您的示例中,我将查询放入CustomerOrder
实体中,因为查询是有关查找CustomerOrder
的,这正是我必须寻找的地方。