0
我有一個hibernate過濾器,需要使用數據庫中的兩個不同列進行評估。我有另一個包含這兩個字段的現有hibernate對象,我希望能夠將另一個hibernate對象傳入session.enableFilter.setParameter()調用,而不是單獨傳遞其中包含的兩個值。你可以在Hibernate過濾器中使用自定義對象嗎?
具體來說,我想將這段代碼:
session
.enableFilter("inLocation")
.setParameter("traversalLeft", 5)
.setParameter("traversalRight", 10);
與此代碼:
session
.enableFilter("inLocation")
.setParameter("location", locationHibernateObject)
更好地隔離excactly什麼過濾器的需求。
但是,當我嘗試配置像過濾器:
@FilterDef(name="inLocation", [email protected](name="location", type="com.example.Location"))
@Filters({
@Filter(name="inLocation", condition="current_location_id in (select location.id from location where location.traversal_left between :location.traversalLeft+1 and :location.traversalRight)")
})
public class ClassToFilter {
我得到試圖調用enableFilter()的錯誤
這是東西,甚至有可能?我究竟做錯了什麼?
這絕對會讓它聽起來像一個休眠問題,而不僅僅是一個我錯過的配置。 – 2010-04-29 20:12:12