0
我想寫一個排除某些實體的hibernate標準。這是我到目前爲止:如何編寫一個標準來排除某些實體
Criterion exclusion1 = Restrictions.not(Restrictions.conjunction()
.add(Restrictions.eq("color", "blue");
.add(Restrictions.eq("type", "aaa"))
.add(Restrictions.eq("subtype1", "bbb"))
.add(Restrictions.eq("subtype2", "ccc"));
Criteria crit = session.createCriteria(MyObject.class);
crit.add(exclusion1);
List result = crit.list();
有幾個這樣的排除標準。這似乎是做我想要的,除非如果任何字段爲空,我希望它被包括在內。例如,具有color = blue,type = aaa,subtype1和subtype2的實體被包括在內。
我該如何重寫這個到而不是排除那個實體?
具有null子類型1的實體不受限制'eq(「subtype1」,「bbb」)'的匹配,所以它也沒有被連接符映射,因此包含它。你不需要改變你的代碼。 –
是的,這就是我的想法。但是它仍然沒有做我想做的事。我希望有人能夠找出正確的方式去做我想做的事。 –