加入后按枚举类型进行Hibernate筛选

时间:2018-11-05 13:59:59

标签: java hibernate hql

我有2个休眠实体TariffDescription和Tariff, TariffDescription包含关税清单。我需要按sellType和catalogEntryId过滤关税。

SellType是一个枚举。当我执行HQL时:

SELECT t FROM Tariff t WHERE t.catalogEntryId = :catalogEntryId AND
t.sellType=:sellType

一切正常。

但是当我尝试执行该HQL时:

SELECT td FROM TariffDescription td JOIN td.tariffs t where
t.catalogEntryId = :catalogEntryId AND t.sellType=:sellType

它返回所有类型的sellType。 它看起来确实像个bug,但我在bug跟踪器上找不到类似的东西。

休眠版本:4.2.18。最终版。

1 个答案:

答案 0 :(得分:0)

JOIN FETCH解决了我的问题。关税似乎是懒惰加载的,休眠状态无法在何处应用原因。